2

重複の可能性:
行の最後の空ではないセル。Excel VBA VBA
を使用して、Excelシートの空白でない列の数を検索する

こんにちは私は選択されたセル(アクティブセル)のアドレスを取得するためのvbaコードを書きました。しかし、最後に使用した列のアドレスが必要です。これが私が書いたコードです。

Dim a As String
a = Split(ActiveCell.Address, "$")(1)
MsgBox a

正しく機能していますが、最後に使用した列のアドレスが必要です。「AB」列までの値があるように、vbaコードを使用してそのアドレスを取得します。

4

1 に答える 1

3

このような?

Option Explicit

Sub Sample()
    Dim ws As Worksheet
    Dim a As String
    Dim LastCol As Long

    '~~> Set this to the relevant sheet
    Set ws = ThisWorkbook.Sheets("Sheet1")

    '~~> Get the last used Column
    LastCol = LastColumn(ws)

    '~~> Return Column Name from Column Number
    a = Split(ws.Cells(, LastCol).Address, "$")(1)

    MsgBox a
End Sub

Public Function LastColumn(Optional wks As Worksheet) As Long
    If wks Is Nothing Then Set wks = ActiveSheet
    LastColumn = wks.Cells.Find(What:="*", _
                After:=wks.Range("A1"), _
                Lookat:=xlPart, _
                LookIn:=xlFormulas, _
                SearchOrder:=xlByColumns, _
                SearchDirection:=xlPrevious, _
                MatchCase:=False).Column
End Function
于 2012-10-03T10:17:40.103 に答える