![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?a65a0e2)
No.1ベストアンサー
- 回答日時:
Sheet1だとして、
Sheet1のマクロで
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'
If Target.Column = 1 And Target.Row >= 5 And Target.Row <= 20 Then
If Target.Value <> "" Then MsgBox "入力済み"
End If
'
End Sub
と入れると、クリックしたセルがA5からA20のどれかで
かつセルに値が入っているときのみ”入力済み”とメッセージが表示されます。
このメッセージ表示の部分を、「名前を付けて保存」の処理に置き換えてはいかがでしょうか。
No.3
- 回答日時:
シートをクリックしただけで発生するイベントは無いのではないでしょうか・・ダブルクリックなら BeforeDoubleClickイベントで取得できるのですが。
できればダブルクリックやボタンでのファイル保存に仕様変更されてはいかがでしょう。多少強引なやりかたとしては、次のような方法もあるにはあります。
(1)A5~A20全てのセルに、セルと同じ大きさテキストなしのラベル(フォームツールバーのほうです)を貼り付け、それぞれにマクロを登録する
(2)登録したマクロのプロシージャ内で、クリックされたオートシェープの名前等によりクリックされたことにするセルを判断する
(3)マクロプロシージャ内にセルのselectメソッドを書いておけば、見た目上はほぼセルがクリックされてイベントが発生したように見えます
SelectionChangeイベントではキーボードによるセル移動などにも反応してしまったり、現在選択されているセルをクリックしても反応しないという問題があります。changeイベントはセルの値が変更されなければクリックしても反応が無い状態になってしまいます。結果としてこのように面倒な方法しか思いつかないのですが、仕様を少し変更していずれかのワークシートイベントを取得して作業させる方が良い気がします。
お礼が遅くなりまして申し訳ありません。
色々な方法があるのですね。大変勉強になります。
今回は#1さんの方法で対応いたしました。
今後、変更などする際にBraveStoryさんの方法も
参考にさせていただきたいと思います。
ご回答ありがとうございました。
No.2
- 回答日時:
CHANGEの方が適当かなと思いまして。
Private Sub Worksheet_Change(ByVal Target As Range)
a = Target.Row
b = Target.Column
If a >= 5 And a <= 20 And b = 1 Then
If Target.Value = "" Then
MsgBox "値入力なし"
Else
flname = InputBox("ファイル名=")
ActiveWorkbook.SaveAs Filename:=flname
End If
Else
msgbox "範囲外入力です"
End If
End Sub
お礼が遅くなり申し訳ありませんでした。
今回のマクロは#1さんの方法で実行させていただきました
Changeという新しい情報をしり今後は色々使い分けたいと思います。
勉強になりました。ご回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/22 08:53
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/04/21 13:46
- Visual Basic(VBA) Outlook VBAについて 1 2023/07/10 12:41
- Excel(エクセル) 【EXCEL】=セル&セルが上手く表示できない。 7 2022/09/04 21:32
- Excel(エクセル) コントロールにリンクするセルが選択されない 3 2022/06/12 14:37
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2023/01/23 17:13
- Excel(エクセル) エクセルにサムネイル画像組み込み 2 2022/09/02 17:13
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2023/05/23 16:28
- Excel(エクセル) 【マクロ】ボタンを押すごとに、A1セル、A2セル、A3セルに日付を入力 3 2023/01/25 00:12
このQ&Aを見た人はこんなQ&Aも見ています
-
好きな人を振り向かせるためにしたこと
大好きな人と会話のきっかけを少しでも作りたい、意識してもらいたい…! 振り向かせるためにどんなことをしたことがありますか?
-
おすすめの美術館・博物館、教えてください!
美術館・博物館が大好きです。みなさんのおすすめをぜひお聞きしたいです。
-
あなたの「プチ贅沢」はなんですか?
お仕事や勉強などを頑張った自分へのご褒美としてやっている「プチ贅沢」があったら教えてください。
-
あなたなりのストレス発散方法を教えてください!
自分なりのストレス発散方法はありますか?
-
【お題】斜め上を行くスキー場にありがちなこと
運営も客も一流を通り越して斜め上を行くスキー場にありがちなことを教えて下さい。
-
VBAでセルをクリックする回数で表示が変わる
その他(プログラミング・Web制作)
-
(エクセルVBA)セルを左クリックしたら実行させるには?
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
vbaで指定したセルより下の行を...
-
VBAでの SendKeysの変数指定方法
-
Excelでプルダウンからフィルタ...
-
Excelマクロ セルを行頭に移動
-
マクロ:エクセルVBAでのワーク...
-
Excel VBA で色付きのセルの値...
-
ダブルクリックでセルに色をつ...
-
Excel VBA:フォーム←→セルのア...
-
IF関数で違う値もTRUEになる
-
【マクロ】1つのセルから結合...
-
マクロの記録で任意の文字を検...
-
ファイルサーバー上のexcelファ...
-
セルをクリックしたら色を変え...
-
excel マクロでの特殊文字入力方法
-
(エクセルVBA)セルを左クリッ...
-
選択されたセルが赤くなる方法...
-
マクロのデータ削除
-
エクセル:セルの色のコード番...
-
Excelのマクロ貼り付けについて
-
エクセルでスピンボタンとスク...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
vbaで指定したセルより下の行を...
-
エクセルでセルをクリックする...
-
VBAでの SendKeysの変数指定方法
-
Excelマクロ セルを行頭に移動
-
IF関数で違う値もTRUEになる
-
(エクセルVBA)セルを左クリッ...
-
Excel VBA:フォーム←→セルのア...
-
Excel VBA で色付きのセルの値...
-
ファイルサーバー上のexcelファ...
-
セルをクリックしたら色を変え...
-
Excelでプルダウンからフィルタ...
-
エクセル:セルの色のコード番...
-
エクセルマクロで「セルのサイ...
-
VBA Rangeの足し算
-
マクロのデータ削除
-
【VBA】アクティブセルだけ背景...
-
excel マクロでの特殊文字入力方法
-
【EXCEL-VBA】特定の値の入った...
-
結合されたセルの移動 VBA
-
ExcelVBA コンボボックスに入力...
おすすめ情報