Excel VBA質問箱 IV

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

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


41283 / 76736 ←次へ | 前へ→

【40534】Re:検索して一致したらデータ入力
お礼    - 06/7/15(土) 22:37 -

引用なし
パスワード
   ▼ichinose さん:
有難うございます!!
完璧に出来ました。

サンプルまで作って頂いて、大変お手数お掛けしました。
私が入力したものと、ichinoseさんのサンプルを実行
した結果と見た目は同じなんですが、なぜ結果が違う
のか不思議です。。
確認したいと思います。

本当に有難うございました。
大変助かりました。

ichinoseさんのコードで、何故求めている結果が出せるのか
分からないのが情けないです。
ヘルプで調べてコツコツ勉強していくことが上達する一番の
近道でしょうか?
始めてから2年くらいになりますが、なかなか上達しないので
悩んでいます。
勉強法等をアドバイス頂けると助かります<m(__)m>


>▼涙 さん:
>こんにちは。
>
>>
>>質問の内容が分かりにくくて申し訳ないです。
>いえ、内容は入力データと出力データ例を記述して頂きましたから
>わかったつもりですが・・・。
>
>>試してみましたところ、DDDだけではなく
>>リストにあった全てのデータが以下のように
>私の方では、DDDだけの追加になっていますが・・・。
>
>
>では、新規ブックに以下のコードで実行してみて下さい。
>涙 さんが提示されたサンプルデータもコードで作成しました。
>
>標準モジュールに
>
>'========================================================
>Option Explicit
>Sub main()
>  Dim rng1 As Range
>  Dim rng2 As Range
>  Dim crng As Range
>  Dim nrw As Long
>  Call mk_sample_data
>  MsgBox "サンプルを Sheet1、Sheet2に作成しました。ここから、処理実行です。"
>'Sheet1がシートASheet2がシートBに相当します
>
>  With Worksheets("sheet1")
>    Set rng1 = .Range("a2", .Cells(.Rows.Count, "a").End(xlUp))
>    End With
>  With Worksheets("sheet2")
>    Set rng2 = .Range("b2", .Cells(.Rows.Count, "b").End(xlUp))
>    End With
>  If rng1.Row > 1 Then
>    If rng2.Row > 1 Then
>     nrw = 0
>     For Each crng In rng1
>       If Evaluate("=SUM(EXACT(" & rng2.Address(, , , True) & "," & crng.Address(, , , True) & ")*1)") = 0 Then
>        With rng2
>          .Cells(.Rows.Count + 1 + nrw, 1).Resize(, 2).Value = crng.Resize(, 2).Value
>          .Cells(.Rows.Count + 1 + nrw, 3).Value = 1000
>          End With
>        nrw = nrw + 1
>        End If
>       Next
>    Else
>     With rng2
>       .Cells(2, 1).Resize(rng1.Rows.Count, 2).Value = rng1.Resize(, 2).Value
>       .Cells(2, 3).Resize(rng1.Rows.Count).Value = 1000
>       End With
>     End If
>    End If
>End Sub
>'=============================================================
>Sub mk_sample_data()
>  With Worksheets("sheet1")
>    .Range("a1:c5").Value = _
>     [={"ID1","ID2","氏名";"AAA",111,"中田";"BBB", 222,"宮本";"CCC",333,"中村";"DDD",444,"川口"}]
>    End With
>  With Worksheets("sheet2")
>    .Range("a1:d4").Value = _
>     [={"年月日","ID1","ID2","料金";"6月1日","AAA",111,6300;"6月3日","BBB",222,3000;"6月5日","CCC",333,4000}]
>    .Range("a5:d8").Value = _
>     [={"6月7日","AAA",111,9000;"6月10日","CCC",333,4000;"6月12日","BBB",222,8000;"6月20日","AAA",111,7000}]
>    End With
>End Sub
>
>これで結果を確認してみて下さい。
>あくまでも新規ブックで確認して下さい

0 hits

【40481】検索して一致したらデータ入力 06/7/14(金) 15:33 質問
【40486】Re:検索して一致したらデータ入力 ichinose 06/7/14(金) 18:45 発言
【40512】Re:検索して一致したらデータ入力 06/7/15(土) 12:48 質問
【40517】Re:検索して一致したらデータ入力 ichinose 06/7/15(土) 15:10 発言
【40534】Re:検索して一致したらデータ入力 06/7/15(土) 22:37 お礼
【40544】Re:検索して一致したらデータ入力 ichinose 06/7/16(日) 8:56 発言
【40564】Re:検索して一致したらデータ入力 06/7/17(月) 22:14 お礼
【40515】Re:検索して一致したらデータ入力 Kein 06/7/15(土) 13:35 回答
【40520】Re:検索して一致したらデータ入力 06/7/15(土) 18:01 質問
【40562】Re:検索して一致したらデータ入力 kobasan 06/7/17(月) 16:20 発言
【40563】Re:検索して一致したらデータ入力 kobasan 06/7/17(月) 20:53 発言
【40565】Re:検索して一致したらデータ入力 06/7/17(月) 22:26 お礼

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