我想通過使用列字串名稱而不是列字母/數字識別符號在 VBA 中定義一個范圍。以下是我目前的做法:
Dim objectRange As range
Set objectRange = AMPTab.range("C2", AMPTab.range("C" & AMPTab.Rows.Count).End(xlUp))
從上面的代碼中,我基本上將 AMPTab 表中 C2 列中的所有內容(直到列中的最后一個非空單元格)設定為等于名為 objectRange 的范圍。
除了使用“C2”和“C”,有什么方法可以使用列標題嗎?例如,列 C 的標題為“物件:名稱”,并且希望使用它來代替列字母:

整個目的是“物件:名稱”列標題不會改變,但列字母可能會從 C --> D 改變,例如。
謝謝!
uj5u.com熱心網友回復:
Sub find_col()
Dim objectRange As Range
Set amptab = ThisWorkbook.Worksheets("database")
If Not amptab.Range("1:1").Find("Object: Name", lookat:=xlWhole) Is Nothing Then
name_col = amptab.Range("1:1").Find("Object: Name", lookat:=xlWhole).Column
Set objectRange = amptab.Range(amptab.Cells(2, name_col), amptab.Cells(amptab.Rows.Count, name_col).End(xlUp))
Debug.Print objectRange.Address
End If
End Sub
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/413794.html
標籤:
上一篇:無法選擇要輸入自定義公式的值
