[[20180917144602]] 『ダブルクリックしたセルと同じ値の別シートのセル』(Can) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『ダブルクリックしたセルと同じ値の別シートのセルへ移動』(Can)

「9月カレンダー」の日付セルをダブルクリックで、別シートの同じ日付のセルへ移動できるファイルを作成したいと考えています。(出来れば別シートからカレンダーへもダブルクリックで戻りたいです)
イメージはカレンダーシートの日付をダブルクリックで、1ヶ月の日毎報告シートへ移動する事です。(シートは増えていきます)
調べたらシート名を取得して移動は発見できましたが、日付の為シート名に「yyyy/mm/dd」は使えないと思います。
良い方法はあるでしょうか?

< 使用 Excel:Excel2010、使用 OS:Windows8 >


何を聞きたいのかちょっと判りませんが、
yyyy/mm/dd形式でシート名を設定できないのならば他の書き方を使えばいいんじゃないでしょうか
例えば yyyy.mm.dd や yyyymmdd みたいな感じで
日付データは年月日をバラバラにして管理することが可能なのでそのように扱えばよいかと思います
(尻高) 2018/09/17(月) 15:37

シート名は任意に設定できると思いますが、例えばカレンダーの日付は見た目上「18日」となっていても実際は「2018/9/17」という値が入力されていると思います。シート名にスラッシュは使えないと思うので、「18日」セルの値と同じにならなので困っています。
(Can) 2018/09/17(月) 15:45

 Value
 Text

 を調べてみてください。
(カリーニン) 2018/09/17(月) 16:24

マクロの話でいいんですよね?
簡易ですがバラバラで年月日を管理したほうが早いように思えたので例をば

Dim a As Variant
Dim 年 As Variant
Dim 月 As Variant
Dim 日 As Variant
Dim c As String

a = Range("日付セル")

年 = Year(a)
月 = Right("0" & Month(a), 2)
日 = Right("0" & Day(a), 2)

c = 年 & 月 & 日

例として日付が「2018/9/17」であれば「20180917」に変換するマクロ

Dim a As Variant
Dim 年 As Variant
Dim 月 As Variant
Dim 日 As Variant
Dim c As Date

a = "20180917"
年 = Left(a, 4)
月 = Mid(a, 5, 2)
日 = Right(a, 2)

c = 年 & "/" & 月 & "/" & 日

こちらは逆に「20180917」を「2018/9/17」に変換するマクロです

日付データをそのままシート名を付けられない以上、必ず変換が必要になりますのでそのようにして下さい。
関数でも同じ事は出来ます。
(尻高) 2018/09/17(月) 16:29


(尻高)様

こんなに細かい変換が出来るんですね。
ありがとうございます。

因みに、本題の
→「9月カレンダー」の日付セルをダブルクリックで、別シートの同じ日付のセルへ移動できるファイルを作成したいと考えています。(出来れば別シートからカレンダーへもダブルクリックで戻りたいです)
イメージはカレンダーシートの日付をダブルクリックで、1ヶ月の日毎報告シートへ移動する事です。(シートは増えていきます)
は可能なのでしょうか?
(Can) 2018/09/17(月) 17:10


BeforeDoubleClickイベントを使えばダブルクリック時に特定のマクロを動かす事は可能ですよ。
(尻高) 2018/09/17(月) 17:30

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.