|
こんにちは。
サンプルを一つ。
全てのシートを対象にしてあります。
-----ThisWorkbookのモジュール-----
Private shLastRng As Range
Private shLastSheet As Worksheet
Property Get LastRng() As Range
Set LastRng = shLastRng
End Property
Property Get LastRow() As Long
If shLastRng.Rows.Count = Rows.Count Then
LastRow = 0
Else
LastRow = shLastRng.Row
End If
End Property
Property Get LastCol() As Long
If shLastRng.Columns.Count = Columns.Count Then
LastCol = 0
Else
LastCol = shLastRng.Column
End If
End Property
Property Get LastSheet() As String
LastSheet = shLastSheet.Name
End Property
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Set shLastRng = Target
Set shLastSheet = Sh
End Sub
-----標準モジュール-----
Sub test()
With ThisWorkbook
If .LastRng Is Nothing Then
MsgBox "編集したセルはありません"
Else
MsgBox "最後に編集したセルは" & Chr(10) & _
"シート:" & .LastSheet & Chr(10) & "行:" & .LastRow & Chr(10) & "列:" & .LastCol
End If
End With
End Sub
-----------------------------------
testを実行すると表示されます
1行、1列を選択した場合は、それぞれ列:0、行:0となります
お試しください。
では。
|
|