

仕事でエクセルを使用し社用車の管理表を作成しているのですが、
ハイパーリンクについて解決できないことがあります。
[現状]
①エクセルで同一ファイル内にシートを複数作りました
②「車両一覧」というシートに社用車の゛ナンバー”など、リストを作りました
③゛ナンバー”ごとにシートをつくり(例えば「12-34」「45-67」など)車両の詳細を記入、「車両一覧」の゛ナンバー”をクリックすると、そうした各々の詳細ページに飛ぶようにしました
[出来ないこと]
現状、「車両一覧」に打ち込んだ!゛ナンバー”から、各ページへのリンクへ飛ばすことは問題無いのですが、「車両一覧」には今後も゛同じナンバー”を、社内の複数の人間が打ち込むことになります。で、そうした時に、毎回ハイパーリンクを作成するのは手間、また全社員がPCに長けている訳ではないので、例えば今後、既に「車両一覧」にある゛12-34”を再度「車両一覧」のどこかのセルに打ち込んだ場合に、自動的にシート「12-34」へリンクさせるということは、エクセルで設定可能なのでしょうか。
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
No.1です。
「車両一覧」SheetのD列にすでに車両ナンバーが4桁数値で入力済みなのですね?
それではD列セルをダブルクリックするとそのSheetをアクティブにする!という方法ではどうでしょうか?
前回同様、シートモジュールですので、前回のコードをすべて消去し、↓のコードに変更してみてください。
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 'この行から//
Dim k As Long, myFlg As Boolean
If Intersect(Target, Range("D:D")) Is Nothing Then Exit Sub
Cancel = True
For k = 1 To Worksheets.Count
If Worksheets(k).Name = Format(Target, "0000") Then
myFlg = True
Exit For
End If
Next k
If myFlg = True Then
Worksheets(k).Activate
Else
MsgBox "該当シートなし"
End If
End Sub 'この行まで//
※ おそらくD列に羅列してあるナンバー分のシートは存在すると思いますので、
「該当シートなし」の部分は不要だと思いますが、あえて記載しています。
これでD列セルをダブルクリックしてみてください。m(_ _)m
実行してみました。
結果...完璧に、作りたいファイルが出来ました!!
本当にありがとうございます。
私を含め社内にもVBAまで出来る人間がおらず、非常に助かりました。
今後も同じような管理ファイルを作成することがあると思いますので、生かします。ありがとうございました!
No.2
- 回答日時:
隣のセルでよければ
C2セルに
=HYPERLINK("#'"&B2&"'!A1","クリック")
フィルハンドルダブルクリック

No.1
- 回答日時:
こんにちは!
VBAでの一例です。
車両ナンバーを入力するというコトですが、気を付けなければならないコトがあります。
仮に
11-11
のように入力してしまうとExcel的には「11月11日」の日付と判断してしまいます。
そこで入力セルの表示形式は「文字列」になっているという前提です。
「車両一覧」シートのどこのセルに入力するのかが判断できないので、A列限定としてみました。
画面左下の「車両一覧」シートのシート見出し上で右クリック → コードの表示 → VBE画面のカーソルが点滅しているところに
↓のコードをコピー&ペースト → Excel画面に戻り(VBE画面を閉じて)
「車両一覧」シートのA列に車両ナンバーを入力してみてください。
Private Sub Worksheet_Change(ByVal Target As Range) 'この行から//
Dim k As Long, myFlg As Boolean
If Intersect(Target, Range("A:A")) Is Nothing Or Target.Count > 1 Then Exit Sub
With Target
For k = 1 To Worksheets.Count
If Worksheets(k).Name = .Value Then
myFlg = True
Exit For
End If
Next k
End With
If myFlg = True Then
Worksheets(k).Activate
Else
MsgBox "該当シートなし"
End If
End Sub 'この行まで//
こんな感じではどうでしょうか?m(_ _)m
すごい!本当にありがとうございます。
ただ...どうもうまくいきません。
現状、「車両一覧」シートDセルに゛車番”という列を作り、そこに1234、5678といった4ケタの数字を並べています。
つけ加えると、まだ゛車番”の列に打ち込んでいない数字もあります(納車予定のもの...仮に0000)が、シートとしては既に0000を作っています。
いかがでしょうか・・・もしまた読んで頂けましたら、ご回答頂けないでしょうか。常にこのページをチェックしておりますので、何か必要な除法があれば追加致します。
よろしくお願いしますm(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの下部のシートタブの...
-
エクセルで別シートの同じ位置...
-
エクセルで数式は残したまま他...
-
EXCELでコピーしたグラフのデー...
-
ワークシートの行が途中から表...
-
Excelで大量の2000個のリストを...
-
【マクロ】【画像あり】4つの...
-
エクセルでセルの書式設定がで...
-
フィルタされたものを切り取り...
-
Excelで保護のかかったシートの...
-
シート保護したExcelへの画像貼...
-
Excelでハイパーリンク先の表示...
-
エクセルで多数のシートをまと...
-
excelで勝手にテキストボックス...
-
Excelの関数
-
シート保護してても並び替えを...
-
【エクセル】表から条件に合っ...
-
行の挿入ができなくなった
-
VBAで差し込みシート作成はでき...
-
スプレッドシートが真っ白にな...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで別シートの同じ位置...
-
エクセルの下部のシートタブの...
-
【マクロ】【画像あり】4つの...
-
ワークシートの行が途中から表...
-
EXCELでコピーしたグラフのデー...
-
エクセルでセルの書式設定がで...
-
シート全体を他のブックのシー...
-
エクセルで数式は残したまま他...
-
Excelで保護のかかったシートの...
-
シート保護したExcelへの画像貼...
-
ロックしたセルのコピー&貼り付け
-
VBA アクティブでないシートの...
-
excelで勝手にテキストボックス...
-
スプレッドシートが真っ白にな...
-
【エクセル】表から条件に合っ...
-
Excelで大量の2000個のリストを...
-
シート保護してても並び替えを...
-
フィルタされたものを切り取り...
-
エクセルで多数のシートをまと...
-
エクセルで打ち込んだ数字を自...
おすすめ情報