Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


9606 / 13646 ツリー ←次へ | 前へ→

【26456】シート1に無ければ次のシートから検索に... しげさん 05/7/5(火) 22:29 質問[未読]
【26457】Re:シート1に無ければ次のシートから検索に... かみちゃん 05/7/5(火) 22:36 発言[未読]
【26459】Re:シート1に無ければ次のシートから検索... しげさん 05/7/5(火) 23:03 質問[未読]
【26460】Re:シート1に無ければ次のシートから検索... かみちゃん 05/7/5(火) 23:42 発言[未読]
【26464】Re:シート1に無ければ次のシートから検索... しげさん 05/7/6(水) 7:08 お礼[未読]

【26456】シート1に無ければ次のシートから検索に...
質問  しげさん  - 05/7/5(火) 22:29 -

引用なし
パスワード
    シート1
                                   
   A    B    C    D    E    F 
1  日付  日付  日付  日付  日付  日付 
2  *
3  *
4  *
5  *

シート2
                                   
   A    B    C    D    E    F 
1  日付  日付  日付  日付  日付  日付 
2  
3  
4  
5  

 この様なデーターがあります。
シート1の A1 の日付と同じ日付けがあればA2:A5見つけた日付けの
下にを貼り付ける。
シート1に同じ日付けが無ければシート2で見つけて貼り付ける。

この様な事が可能でしょうか。皆様どうかご教授下さい。

【26457】Re:シート1に無ければ次のシートから検索...
発言  かみちゃん  - 05/7/5(火) 22:36 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>シート1の A1 の日付と同じ日付けがあればA2:A5見つけた日付けの
>下にを貼り付ける。

A1の日付と何を比較して同じと判断するのですか?
見つけた日付の下に貼り付ける値は何を貼り付けるのですか?

>シート1に同じ日付けが無ければシート2で見つけて貼り付ける。

シートは、2枚だけですか?それとも、ブック内のすべてのシートですか?
また、同じ日付(何が同じなのかわかりませんが)見つかったら、それ以降は、探さなくていいのですか?

なんとなく、Findメソッドで出来そうな感じがしますが、もう少し、例題を具体的に示していただけませんか?

【26459】Re:シート1に無ければ次のシートから検索...
質問  しげさん  - 05/7/5(火) 23:03 -

引用なし
パスワード
   ▼かみちゃん さん:

早速の返信ありがとうございます。

>A1の日付と何を比較して同じと判断するのですか?
A1の日付けは毎回変わります。
B1から右の日付けは変わりません。

   A    B    C    D    E    F 
1  日付  4/1  4/2  4/3  4/4  4/5 

この様になります。

>見つけた日付の下に貼り付ける値は何を貼り付けるのですか?

貼り付ける値は「数字」になります。

>シートは、2枚だけですか?それとも、ブック内のすべてのシートですか?
>また、同じ日付(何が同じなのかわかりませんが)見つかったら、それ以降は、探さなくていいのですか?

シートは2枚だけで、見つけたらそれ以降は探しません。

言葉足らずで申し訳ございません。
マクロ・VBAを勉強し始めたばかりで良く説明も出来ませんが宜しくお願いいたします。

【26460】Re:シート1に無ければ次のシートから検索...
発言  かみちゃん  - 05/7/5(火) 23:42 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>>見つけた日付の下に貼り付ける値は何を貼り付けるのですか?
>
>貼り付ける値は「数字」になります。

数字をどう貼り付けるのかわかりませんが、
とりあえず、次のような感じで、なんとなくできるようです。
ちょっと、不具合も多少あるかもしれませんし、スマートではないので、その辺りは、とりあえずということで、参考にしてください。

Option Explicit
Sub Macro1()
 Dim strDate As String
 Dim c As Range
 
 strDate = Format(Range("A1").Value, "m/d")
 
 'Sheet1を検索
 With Sheets("Sheet1").Rows(1)
  Set c = .Find(strDate, LookIn:=xlValues)
  If Not c Is Nothing Then
   Range(c.Offset(1), c.Offset(5)).Value = 1
  End If
 End With
 'Sheet2を検索
 With Sheets("Sheet2").Rows(1)
  Set c = .Find(strDate, LookIn:=xlValues)
  If Not c Is Nothing Then
   Range(c.Offset(1), c.Offset(5)).Value = 1
  End If
 End With

End Sub

【26464】Re:シート1に無ければ次のシートから検索...
お礼  しげさん  - 05/7/6(水) 7:08 -

引用なし
パスワード
   ▼かみちゃん さん:
早速の返信ありがとう御座います

かみちゃん さんのマクロを、新しいbookでテストしましたが上手く
動きませんでした。
しかし、これを参考にして自分で手直しして行きたいと思います。

9606 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free