Excel で VBA を使用する:
複数のテーブルを持つシートがたくさんあります。これらのテーブルに共通しているのは、ProductID 列と LotNumber 列だけです。製品 ID 列のデータは、検証または操作する必要があります。現在選択されているセルの現在のテーブルのテーブル行インデックス番号を取得する方法が必要です。テーブルの行とシートの行が一致しないため、ActiveCell 参照を使用できません。途中で他のテーブルがあるため、列で最後に使用されたセルを見つけることはできません。
このサブをさまざまなワークブックで使用できるようにする必要があります。
ここに私がこれまでに持っているコードがあります。
Const tblUNLABELED As String = "tblUnLabel"
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
StopAppEvents
Dim ws As Worksheet
Set ws = ActiveSheet
Dim intRow As Integer
Dim strTest As String
If Not Intersect(ActiveCell, _
ActiveSheet.Range(tblUNLABELED & "[LotNumber]")) Is Nothing Then
'go to the product entered in this table row and Ucase(ProductID)
strTest = ws.ListObjects(tblUNLABELED).Range(intRow, "[ProductID]")
ws.ListObjects(tblUNLABELED).Range(intRow, "[ProductID]") = UCase(strTest)
End If
RestartAppEvents
End Sub
どんな助けでも大歓迎です。