
SHEET1のA1~A31まで、1月1日~1月31日と日付を入力しています。
SHEET2のA1~下にも日付が入力されているのですが、例えばA1~A10まで1月1日、A11~A13まで1月2日、引き続きA14~A20まで1月3日、、、、以下同じように同日付の数が一定でないような入力がされているとき、SHEET1のA1の1月1日をクリックすればSHEET2のA1へ、SHEET1のA2の2月1日をクリックすればSHEET2のA11へと頭出しのようなジャンプ方法はないでしょうか?
相変わらず説明が下手で申し訳ありませんがよろしくお願いします。
No.7
- 回答日時:
「うまくいきません」とは?具体的に説明していただくと対応可能かもしれません。
よく見えませんが次のような事はありませんか?
・シート名が実は「Sheet1」や「Sheet2」ではない?
お忙しい中、わざわざありがとうございます。
文字数が制限され詳しく書けません、、
シート名は、確かに変えています。ツリーにはSheet1(変更名)となっているので
そのままでいいのかと思い該当のSheet番号を表記しています。
あと行位置の番号変更も、I行なので9 C行なので3に変更しました。
よろしくお願いします。
No.6
- 回答日時:
横から失礼します。
データ量にもよるのですが、ループ処理で検索するより、Findメソッドで検索した方が、安定したパフォーマンスが得られると思います。
こんな感じです。
ちなみに、標準モジュールは最初からあるものではなく、「挿入」メニューから「標準モジュール」で作成する必要があります。
以下、Findメソッドでの実装例です。Sheet1のBeforeDoubleClickベントプロシジャに記述してください。
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Columns("A")) Is Nothing Then Exit Sub
Cancel = True
If Target.Value = "" Then Exit Sub
On Error Resume Next
Application.Goto Reference:=Sheets("Sheet2") _
.Columns("A").Find(Target.Text, LookIn:=xlValues, LookAt:=xlWhole)
End Sub
No.4
- 回答日時:
No.3 の補足
「Sheet1」の日付の列がA列でない場合は次の2行の「1」(同じものが有るので合計4箇所)を適当に変更して下さい。
「If Target.Column <> 1 Then Exit Sub」
「With Cells(行, 1)」
「Sheet2」の日付の列がA列でない場合は次の2行の「1」(合計3箇所)を適当に変更して下さい。
「For 行 = 1 To Cells(Rows.Count, 1).End(xlUp).Row」
「With Cells(行, 1)」
※ 雰囲気で判ると思いますが、B列なら「2」C列なら「3」…となります。
No.3
- 回答日時:
☆ 標準モジュールへ
-------------------------------------------------------------------------------
Sub 日付選択(日付 As Date)
Dim 行 As Long
Dim 有 As Boolean
Sheets("Sheet2").Select
For 行 = 1 To Cells(Rows.Count, 1).End(xlUp).Row
With Cells(行, 1)
If .Value = 日付 Then
.Select
有 = True
Exit For
End If
End With
Next
If 有 = False Then
Sheets("Sheet1").Select
MsgBox ("対象が見つかりませんでした")
End If
End Sub
-------------------------------------------------------------------------------
☆ Sheet1 のシートモジュールへ
-------------------------------------------------------------------------------
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column <> 1 Then Exit Sub
If Target.Row > Cells(Rows.Count, 1).End(xlUp).Row Then Exit Sub
Cancel = True
If IsDate(Target.Value) = False Then
MsgBox ("日付を指定して下さい")
Exit Sub
End If
Call 日付選択(Target.Value)
End Sub
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column <> 1 Then Exit Sub
If Target.Row > Cells(Rows.Count, 1).End(xlUp).Row Then Exit Sub
Cancel = True
If IsDate(Target.Value) = False Then
MsgBox ("日付を指定して下さい")
Exit Sub
End If
Call 日付選択(Target.Value)
End Sub
-------------------------------------------------------------------------------
※ シートモジュールにコードを記入するときは下図の赤枠で囲んだ部分をクリックして開いた所に記入して下さい。
※「Private Sub Worksheet_BeforeDoubleClick …」~「End Sub」がダブルクリックで反応させるためのコードです。
※「Private Sub Worksheet_BeforeRightClick …」~「End Sub」が右クリックで反応させるためのコードです。

No.2
- 回答日時:
「セルに入っている日付はシリアル値でしょうか?」ですが、書式設定とはあまり関係ありません。
たとえば「1月1日」と入力されているセルを選択したときに数値バーに「2017/1/1」と表示されればシリアル値です。No.1
- 回答日時:
マクロ(VBA)ならば可能です。
以下回答いただけますか?・ セルに入っている日付はシリアル値でしょうか?
・「クリックすれば」とは、左シングルクリックでしょうか?左ダブルクリックや右シングルクリックではダメでしょうか?(左シングルクリックのイベントが無い為)
・「SHEET1」の入力後にセルを移動する方向はどちらでしょうか?
・ シートイベントへのコードの記入方法は判りますか?
早速のコンタクト感謝しかありません。
ありがとうございます!
使っているエクセルはエクセル2016MSO16.0.7571.7095です。
無理でしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- Excel(エクセル) 現時点の年齢を算出して、その年齢と一致したセルを色付けしたい。 4 2022/06/23 17:49
- Excel(エクセル) 下記エクセルの式がなぜこうなるのか理由が知りたいです。 6 2022/08/20 00:43
- その他(プログラミング・Web制作) python文字化けエラーが発生しているようです 3 2022/04/13 19:41
- Excel(エクセル) Excel 売上管理シートに入力した売上データを、日報に自動反映させたいと考えています。 売上管理シ 3 2023/04/29 18:08
- Excel(エクセル) 【マクロ】ボタンを押すごとに、A1セル、A2セル、A3セルに日付を入力 3 2023/01/25 00:12
- Excel(エクセル) Excelで日報を自動で作成したい 売上管理シートに入力した売上データを、日報に自動反映させたいと考 1 2023/04/29 18:07
- Excel(エクセル) シート参照を含む数式を連続コピー 3 2022/12/10 11:42
- Excel(エクセル) DATEVALUE関数がエラーになる 2 2022/07/12 19:30
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル 日付 指定 連続印刷
-
スマホ本体からSDカードへ移...
-
Google Street Viewで進むとコ...
-
Excel2007 土日を除く1ヵ月分...
-
日付入り写真をエクセルに貼り...
-
デジカメの日付表示を消す方法
-
同級生の顔を使ってエロ画像を...
-
スマホ買い替え検討中中です。 ...
-
プリント画面の丁合いとはなん...
-
至急回答お願いします、彼氏に...
-
ppiから画素サイズの求め方
-
縦800ピクセル×横800ピクセルを...
-
2Lサイズの写真のトリミングの...
-
PCでPDFファイルを電子書籍のよ...
-
添付された画像を見たい。appli...
-
静止画撮影について
-
光学顕微鏡についてです。 接眼...
-
tiffファイルの解像度変更の仕方
-
ハードディスク
-
iPhoneで写真を撮りました。 端...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル 日付 指定 連続印刷
-
スマホ本体からSDカードへ移...
-
Google Street Viewで進むとコ...
-
デジカメの日付表示を消す方法
-
CD-Rを作成した日を知る方法は...
-
日付入り写真をエクセルに貼り...
-
デジカメで撮影した写真に、日...
-
Word:日付を入れ替えながら印...
-
日付入りで撮影した写真を、印...
-
デジカメで撮影した画像の日付変更
-
EOS kiss の日付が表示されなく...
-
パソコンで『日付』の入力
-
写真の日付を印字しない方法
-
デジ1眼で撮った写真の分類の仕方
-
コンタクトシートでExif情報も...
-
エクセルについて教えて下さい!
-
ヘッダ[送信日時]の編集
-
写真に日付を入れて印刷したい
-
エクセルで曜日を入れたい
-
日付までコピーしたい
おすすめ情報
セルには書式設定から日付を選んでいます。
クリックはなんでもかまいません。
入力後の移動方向は下です。
もうしわけありません、シートイベントへの記入方法とのことですが
わかりません。
お手数おかけし申し訳ありません。
お返事ありがとうございます。
それでしたらシリアル値です。
よろしくお願いします。
VBAに関しては全くの素人です、、
標準モジュールというフォルダがないのですが、、
無知で申し訳ありません、、」
ご両者のご回答に対して色々調べながらやっているのですが、情けないことにうまくいきません、、、もう少し頑張ってみます。