Excel VBA質問箱 IV

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

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


30667 / 76732 ←次へ | 前へ→

【51329】Re:データ統合について
回答  ハチ  - 07/9/12(水) 9:22 -

引用なし
パスワード
   ▼tetu さん:

>統合Sheetの同じ値の行とロットNOの次の列(空白の部分)にセルをActiveさせ貼り付けたい
>のですが,どのようにコードにしたらいいかわからず、先にすすめないです
>実際,途中のためここまでの状態も、この構文でいいのも不安ですし
>検索が終わった後次のセルを又同じ用に検索させたいのですが、これもわからず
>こまっています。大変申し訳ありませんがその点踏まえ再度わかる方おしえてください

ForNextのLoopは解っていらっしゃるようですね。
2つの範囲を2重Loopにして1行づつ比較していくことでもできるのでは?

もしくは・・・
この内容であれば、MatchよりFindのほうが使い勝手が良いと思います。
他の掲示板で回答してものが残ってました。参考までに載せときます。
過去ログにもありそうですけど。

Sheet 1枚目のA1,B1にデータを入力し
A1の値で、2枚目A列を検索してあれば上書き、なければ最終行に追加。
Findの引数などは、テキトーです。

Sub Test_KAKIKOMI()
  Dim Tgt_R As Range
  Dim SakiRng As Range
  
  Set Tgt_R = Worksheets(1).Range("A1")
  With Worksheets(2)
    Set SakiRng = .Range("A:A").Find(Tgt_R)
    If SakiRng Is Nothing Then
      MsgBox "該当なしの為、最終行+1をセット"
      Set SakiRng = .Range("A" & Rows.Count).End(xlUp).Offset(1)
    Else
      MsgBox "上書き"
    End If
  End With
  'A1,B1を書き込み
  SakiRng.Resize(, 2).Value = Tgt_R.Resize(, 2).Value

  Set Tgt_R = Nothing
  Set SakiRng = Nothing
End Sub

1 hits

【51281】データ統合について tetu 07/9/9(日) 22:20 質問
【51307】Re:データ統合について ハチ 07/9/11(火) 11:02 発言
【51320】Re:データ統合について tetu 07/9/12(水) 0:44 質問
【51329】Re:データ統合について ハチ 07/9/12(水) 9:22 回答
【51377】Re:データ統合について tetu 07/9/14(金) 0:17 お礼

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