Excelにて、シート1のA列とシート2のA列のデータにNoを入れます。
シート1のA列のNoをクリックすると、シート2のA列の同じNoにジャンプするマクロを組みたいです。
現在組んでいるマクロは、
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Sht As Worksheet
Dim Rng1 As Range
Dim Rng2 As Range
Dim FindCell As Range
Set Sht = Worksheets("シート2")
Set Rng1 = Range("A2:A100")
Set Rng2 = Sht.Range("A2:A100")If Intersect(Target, Rng1) Is Nothing Then Exit Sub
If Target.Count > 1 Then Exit Sub
Set FindCell = Rng2.Find(Target.Value)
If Not FindCell Is Nothing Then
Application.Goto Reference:=FindCell, Scroll:=False
End If
End Sub
です。
一応マクロは実行されますが、そうすると、シート1のA列の編集(Noを追加したり変更したり・・・)できません。
編集や変更もできて、検索マクロも実行できるというマクロの組み方はありますでしょうか?
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
再度の登場、onlyromです。
お気づきとは思いますが回答1のイベントプロシージャ名が
>xxWorksheet_BeforeDoubleClick
と前に余計な、xx が付いているので外してください。
>一致したセルに飛ぶ時、そのセルがある行を選択
If Not FindCell Is Nothing Then
Application.Goto Reference:=FindCell, Scroll:=False
FindCell.EntireRow.Select ●この一行を追加
End If
行選択のコード●を追加してください。
以上。
No.1
- 回答日時:
>シート1のA列の編集(Noを追加したり変更したり・・・)できません
それは当然のことですね。
修正しようとA列をクリックすると、Worksheet_SelectionChangeイベントが発生します。
質問者はそのイベントにコードを書いてますのでクリックするたびに提示のコードが動作して修正も変更もできなくなります。
質問のようなことをしたい場合は、ダブルクリックして飛ばすように
BeforeDoubleClickイベントを使う方がいいでしょう。
'----------------------------------------------
Private Sub xxWorksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Sht As Worksheet
Dim Rng1 As Range
Dim Rng2 As Range
Dim FindCell As Range
If Target.Count > 1 Then Exit Sub
Set Sht = Worksheets("シート2")
Set Rng1 = Range("A2:A100")
Set Rng2 = Sht.Range("A2:A100")
If Not Intersect(Target, Rng1) Is Nothing Then
Cancel = True
Set FindCell = Rng2.Find(Target.Value)
If Not FindCell Is Nothing Then
Application.Goto Reference:=FindCell, Scroll:=False
End If
End If
End Sub
'-------------------------------------
ちょこっとコードを変えてあります。
以上。
ありがとうございます。
これでやってみます。もう一点なんですが、一致したセルに飛ぶ時、そのセルがある行を選択(A3だったら3行目)を参照してくれたりするプログラムもできますか??
行選択の方が見やすいので出来ればそうしたいのですが。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Excel(エクセル) VBAについて 3 2022/06/19 18:19
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- Visual Basic(VBA) excel2021で実行できないマクロ。どこを直したらいいのか 2 2022/03/28 03:40
- Visual Basic(VBA) VBAで重複した値のセルに色付けをしたい 1 2022/11/02 16:12
- Visual Basic(VBA) エクセルVBAで教えて頂きたいのですが? 2 2022/12/31 20:28
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Excel(エクセル) エクセルのイベントプロシージャーでF列の最終行のセルの入力をトリガーにしたいのですが 1 2022/10/14 09:36
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
エクセルVBAで、条件に一致するセルへ移動
Excel(エクセル)
-
【VBA】指定したセルと同じ値で、別シートにあるセルに移動するには?
Visual Basic(VBA)
-
エクセルで検索して移動???
Excel(エクセル)
-
-
4
A1に入力された文字列と同じ文字があるセルへ移動
Excel(エクセル)
-
5
値を入力後、自動的にアクティブセルが移動するマクロ
Excel(エクセル)
-
6
HYPERLINKとADDRESSとMATCHの組み合わせ技
Excel(エクセル)
-
7
VBA 特定の文字が入力されたセルに移動する 複数
Visual Basic(VBA)
-
8
Enterキーでマクロを起動さす。
その他(ソフトウェア)
-
9
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
10
Excel VBA あるセルでENTERを押すと特定のセルへ移動したい
Excel(エクセル)
-
11
セルの値からマクロで検索を行うには
Excel(エクセル)
-
12
エクセル:シート名を手入力でなく、セル「A1」の文字を出したい。
Excel(エクセル)
-
13
エクセルのマクロで全シートを検索したい
Excel(エクセル)
-
14
VBAを使って検索したセルをコピーして別の場所に貼り付ける。
Visual Basic(VBA)
-
15
Excelで条件をつけてハイパーリンクで飛ばしたいのですが・・・
Excel(エクセル)
-
16
ExcelVBAを使って、値がある場合は作業を繰り返し実行するプログラムを作成したい。
Visual Basic(VBA)
-
17
excelのリストボックスで選択した項目をアクティブセルに入力方法
Excel(エクセル)
-
18
VBA 別シートの同じ日付の欄に値を貼付け
Excel(エクセル)
-
19
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
20
ある列のセルに特定の文字が入っていたら他のセルに決まった文字を入れる
Word(ワード)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【ExcelVBA】全シートのセルの...
-
同じ作業を複数のシートに実行...
-
VBA 検索して一致したセル...
-
別のシートから値を取得するとき
-
ExcelVBA シート名を複数セルか...
-
Excelマクロのエラーを解決した...
-
コマンドボタンをクリックでシ...
-
XL:BeforeDoubleClickが動かない
-
実行時エラー'1004': WorkSheet...
-
VBA 最終行まで数式をコピーする
-
ユーザーフォームに入力したデ...
-
Access エクセルシート名変更
-
excelのマクロで該当処理できな...
-
VBA 存在しないシートを選...
-
エクセルのマクロについて教え...
-
【EXCEL】ワークシートの名前を...
-
Excel マクロについての相談
-
【Excel VBA】Worksheets().Act...
-
シートが保護されている状態で...
-
vbaでworksheetfunctionでの複...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別のシートから値を取得するとき
-
ユーザーフォームに入力したデ...
-
【ExcelVBA】全シートのセルの...
-
同じ作業を複数のシートに実行...
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
ExcelVBA シート名を複数セルか...
-
実行時エラー'1004': WorkSheet...
-
XL:BeforeDoubleClickが動かない
-
VBA 存在しないシートを選...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
ブック名、シート名を他のモジ...
-
【Excel VBA】Worksheets().Act...
-
ExcelのVBAのマクロで他のシー...
-
エクセルのシート名変更で重複...
-
特定の文字を含むシートだけマ...
-
シートが保護されている状態で...
-
Excel マクロについての相談
-
VBA 検索して一致したセル...
おすすめ情報