0

「Phonetic Name」という名前の最初の列ヘッダーをテーブルで検索する VBA サブルーチンを作成したいと思います。次に、テーブルの右下隅にある絶対的な最後のセルを見つけ、最後のセルの 1 行上のセル座標として変数を格納します。サブルーチンは、最初のセル「Phonetic Name」と「LastCell」変数の間のすべてのセルを選択します。

Dim LastCol As Integer

TL = ActiveSheet.Range("A:A").Find("Phonetic Name", LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=True).Row

Set LastRow = Cells.Find("*", [a1], , , xlByRows, xlPrevious)

With ActiveSheet
    LastCol = .Cells(TL, .Columns.Count).End(xlToLeft).Column
End With

Set LastCell = ActiveSheet.Cells(LastRow.Row - 1, LastCol)
'I would like to do something like the following... 
ActiveSheet.Range("TL:LastCell").Select
Selection.Copy

このロジックを VBA に適した方法で書き直すにはどうすればよいですか?

4

1 に答える 1

2
Dim LastCol As Integer  
Dim TL as Range

Set TL = ActiveSheet.Range("A:A").Find("Phonetic Name", _
                 LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=True)  

If Not TL Is Nothing Then

    Set LastRow = Cells.Find("*", [a1], , , xlByRows, xlPrevious)  
    With ActiveSheet     
        LastCol = .Cells(TL.Row, .Columns.Count).End(xlToLeft).Column 
    End With  
    Set LastCell = ActiveSheet.Cells(LastRow.Row - 1, LastCol) 
    ActiveSheet.Range(TL,LastCell).Copy

End If
于 2012-08-24T00:52:47.617 に答える