Excell VBA にて、
ユーザーフォーム(userForm1)に、スプレッドシートを
1)その他のコントロール
2)Microsoft Spreadsheetを追加
によって追加して、
そのspreadSheet1上のsheet1の任意のセル(D:*)をクリックしたとき、その行のD1:D5k一連の値を変数に代入したいのですが、
まず手始めとして、そのセルを選択したときにイベントを発生させたい。
該当のセルを選択してプロシージャを追加すると
Private Sub Spreadsheet1_BeforeContextMenu( _
ByVal x As Long, _
ByVal y As Long, _
ByVal Menu As OWC11.ByRef, _
ByVal Cancel As OWC11.ByRef _
)
となります。
比較のため
Private Sub Spreadsheet1_SelectionChange(ByVal Target As Range)
If Target.Address() = "$A$1" Then
MsgBox "このセルはA1です。"
End If
End Sub
だと、
Error・・・「コンパイル エラー:
プロシージャの宣言が、イベントまたはプロシージャの定義と一致していません。」
・・・どうすればよいのでしょう。
最終的には、「その行のいくつかの値を変数に代入したい」のですが
No.2ベストアンサー
- 回答日時:
こんにちは。
Private Sub Spreadsheet1_SelectionChanging(ByVal Range As OWC11.Range)
With Spreadsheet1
'クリックしたセルの1行目の値
MsgBox .Cells(1, Range.Column).Value
End With
End Sub
No.1
- 回答日時:
以下のようにしてみてはどうでしょうか?
Private Sub Spreadsheet1_SelectionChanging(ByVal Range As OWC11.Range)
If Range.Address = "$A$1" Then
MsgBox "このセルはA1です。"
End If
End Sub
この回答への補足
うまく行きました。
Private Sub Spreadsheet1_SelectionChanging(ByVal Range As OWC11.Range)
MsgBox Cells(Range.Column, Range.Row).Value & "だけど"
MsgBox "このセルは" & Range.Address(False, False) & "です"
MsgBox "このセルは" & Range.Address(True, True) & "です"
MsgBox "行番号は" & Range.Row & "です。"
MsgBox "列は" & Range.Column & "です"
End Sub
しかし、では R1Cの値[R1C1]・・同じ行の最初のセルの値を取得しようとしても、うまく行きません。
どうしたらよいのでしょう。
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) エクセルのVBAでダブルクリックでチェックを入れたあと 1 2022/10/26 20:30
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- Excel(エクセル) B列に文字がはいったらA列に数字が入るマクロードを完成させたい 4 2023/04/21 01:58
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2022/06/10 11:06
- Visual Basic(VBA) エクセル VBAで複数セル選択時エラーになる問題 3 2022/10/04 02:40
- Visual Basic(VBA) エクセルVBA ダブルクリックしたら色反転を指定したセルのみにしたい 2 2022/04/06 12:52
- Visual Basic(VBA) 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする 5 2022/03/26 18:31
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【関数】スペースがいくつ入っ...
-
西暦や和暦の表示をyyyymmdd表...
-
Excelのセルを飛ばして入力する
-
Excelのオートフィル
-
別シートからの文字を変更
-
Excel 2019 のピボットテーブル...
-
エクセルの行の抽出について質...
-
【マクロ】エクセルにかいてあ...
-
スプレッドシート クエリ関数 1...
-
エクセルでセルに「氏名を入力...
-
MOS365 Excel Expert / Excel R...
-
excelの不要な行の削除ができな...
-
EXACT関数とIF関数の組み合わせ...
-
スプレッドシートの関数VLOOKUP...
-
Excelで全角を半角にしたいので...
-
Excel初心者です。 詳しい方、...
-
エクセルの数式で教えてください。
-
4つのパターンを表示するEXACT...
-
スマートな関数を教えて下さい。
-
【Excel】セル内の時間帯が特定...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイル内にある数字の出現回...
-
Excel関数の先頭に「@」が入っ...
-
エクセルの気味悪い不思議
-
Excel VBAで、実行時にsheet上...
-
表示されている人数だけを数え...
-
他人が作ったマクロの理解
-
Excelの関数について質問です。
-
Excel 集計表
-
エクセル 日時の計算式について
-
Excelの関数に関して質問です。...
-
エクセル:セル内の文字列の下...
-
絞り込み検索
-
エクセルの関数で
-
エクセルの書式設定について教...
-
余分なEXCELファイルに印刷され...
-
VBA 同一シート内での転記の仕方
-
長期休みの関数はありますか
-
Excelの空のセル
-
エクセルで入力してある文を別...
-
Excelのマクロで、セルを結合し...
おすすめ情報