萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 辦公室軟體 >  >> Excel 教學 >> Excel 綜合

VBA 操作 Excel 經典通用程式碼庫:儲存格存取、工作表迴圈、工作表函數呼叫、熱鍵綁定、路徑取得

彙整 VBA 操作 Excel 最常用的通用程式碼片段,涵蓋儲存格屬性存取、工作表迴圈、呼叫工作表函數、熱鍵綁定自動化、取得各類路徑等,適合建立個人程式碼片段庫。

核心屬性速查

程式碼功能
Target.Column取得作用中儲存格欄號
Target.Row取得作用中儲存格列號
Worksheet.UsedRange.Rows.Count指定工作表已使用列數
Worksheet.UsedRange.Columns.Count指定工作表已使用欄數
Worksheet.Cells(Row, Col).Value取得/設定指定儲存格值
Worksheets(i).Cells(r, c).Value用索引號存取工作表儲存格

綜合應用範例:跨表比對寫入

If Target.Column = 1 Then
    For j = 1 To Sheet2.UsedRange.Rows.Count
        If Trim(Sheet1.Cells(Target.Row, 1).Value) = Trim(Sheet2.Cells(j, 1).Value) Then
            Sheet1.Cells(Target.Row, 2).Value = Sheet2.Cells(j, 2).Value
        End If
    Next j
End If

功能:當 A 欄被編輯時,在 Sheet2 的 A 欄尋找相同值(去除空白),找到則將 Sheet2 對應 B 欄值寫入 Sheet1 同列 B 欄。

呼叫工作表函數 (WorksheetFunction)

' 最佳寫法:指定工作表與 Range 物件
Worksheets(1).Range("C6").Value = Application.WorksheetFunction.Sum(Worksheets(1).Range("A1:B4"))
Worksheets(1).Range("D6").Value = Application.WorksheetFunction.Average(Worksheets(1).Range("A1:B4"))
Worksheets(1).Range("E6").Value = Application.WorksheetFunction.Max(Worksheets(1).Range("A1:B4"))
Worksheets(1).Range("F6").Value = Application.WorksheetFunction.Min(Worksheets(1).Range("A1:B4"))
Worksheets(1).Range("G6").Value = Application.WorksheetFunction.Median(Worksheets(1).Range("A1:B4"))

熱鍵綁定:F1/F3 觸發自動輸入

Private Sub Workbook_Open()
    Application.OnKey "{F1}", "MyAutoInput1"
    Application.OnKey "{F3}", "MyAutoInput2"
End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    MyRow = Target.Row
End Sub

Public MyRow As Integer

Sub MyAutoInput1()
    ActiveSheet.Cells(MyRow, 4).Value = 200
End Sub

Sub MyAutoInput2()
    ActiveSheet.Cells(MyRow, 4).Value = 300
End Sub

按 F1 在當前列 D 欄填 200,按 F3 填 300。

取得各類路徑

程式碼回傳內容
Application.PathExcel 安裝路徑
ThisWorkbook.Path含巨集之活頁簿所在資料夾
Application.DefaultFilePath預設開啟/儲存資料夾
Application.ActiveWorkbook.Path目前作用中活頁簿資料夾
Application.ActiveWorkbook.FullName目前作用中活頁簿完整路徑含檔名
Application.ActiveWorkbook.Name目前作用中活頁簿檔名

將常用片段存為程式碼片段或增益集,開發效率大增。

copyright © 萬盛學電腦網 all rights reserved