Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


66737 / 76738 ←次へ | 前へ→

【14563】Re:「最後に編集したセル」の行列番号取得
回答  Ron  - 04/6/1(火) 22:48 -

引用なし
パスワード
   こんにちは。
サンプルを一つ。
全てのシートを対象にしてあります。

-----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となります
お試しください。
では。
0 hits

【14560】「最後に編集したセル」の行列番号取得 kanto 04/6/1(火) 20:45 質問
【14563】Re:「最後に編集したセル」の行列番号取得 Ron 04/6/1(火) 22:48 回答
【14571】Re:「最後に編集したセル」の行列番号取得 kanto 04/6/2(水) 9:06 お礼

66737 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free