このトピックに書きこむ |
---|
Re[7]: AシートへBシートのデータ(入力日・金額1・金額2・金額3)の貼付について | |
---|---|
[196393] Re[7]: AシートへBシートのデータ(入力日・金額1・金額2・金額3)の貼付について- ■ / 記事引用/メール受信=OFF■ □投稿者/ VBA初心者 -(2025/01/01(20:35)) □U R L/ 半平太さん 大変ありがとうございました。! 上手く動作しました。 御多忙大変お世話になりました。 また、よろしくお願いいたします。 |
[196392] Re[6]: AシートへBシートのデータ(入力日・金額1・金額2・金額3)の貼付について- ■記事引用/メール受信=OFF■ □投稿者/ 半平太 -(2025/01/01(20:19)) □U R L/ >aCell.Range("D1,F1:H1").Copy wsDest.Cells(RW, "D") ↓こうかな?(2文に分ける) aCell.Range("D1,F1:H1").Copy wsDest.Cells(RW, "D").PasteSpecial xlPasteValues |
[196391] Re[5]: AシートへBシートのデータ(入力日・金額1・金額2・金額3)の貼付について- ■記事引用/メール受信=OFF■ □投稿者/ VBA初心者 -(2025/01/01(19:28)) □U R L/ 半平太さん 早速テストして見ました データについては上手く出来ました 大変ありがとうございました。 御多忙の所、大変感謝致します ただ、出来れば、 Bシートの書式(日付形式、金額形式)を貼り付けしていただいていますが、 Aシートに定義している色と枠線の書式は 残して頂きたいのです Aシートに顧客番号別に複数該当行について 色と枠線を定義付けているのですが 実行した所、 書式の色や枠線が変わっていました (Bシートの色や枠線の書式が反映されているようです) 申し訳ありませんが、 上記について修正のコードをいただけないでしょうか 御多忙中、恐れ入りますが、 よろしくお願いいたします。 |
[196390] Re[4]: AシートへBシートのデータ(入力日・金額1・金額2・金額3)の貼付について- ■記事引用/メール受信=OFF■ □投稿者/ VBA初心者 -(2025/01/01(17:34)) □U R L/ 半平太さん 早速にご回答ありがとうございます。 早速に操作してみます もしわからないところが あれば、 またよろしくお願いいたします。 |
[196389] Re[3]: AシートへBシートのデータ(入力日・金額1・金額2・金額3)の貼付について- ■記事引用/メール受信=OFF■ □投稿者/ 半平太 -(2025/01/01(17:26)) □U R L/ >Aシートの顧客番号は実際には500先ありますので >Aシートの行は 2000=500X4(年月)で固定です そこはちょっと解からないですが、こんなのでいいかもです。 Sub test() Dim wsDest As Worksheet Dim dicT As Object Dim rDest As Range Dim aCell As Range Dim msg Dim RW Set dicT = CreateObject("Scripting.Dictionary") msg = "以下の顧客データは記入先に在りません" Set wsDest = Worksheets("A") '←実際のシート名にする With wsDest Set rDest = .Range("A2", .Cells(.Rows.Count, "A").End(xlUp)) End With For Each aCell In rDest 'Dictionaryにキー(番号+年月)とItem(行番号)を登録する If aCell.Value <> "" Then dicT(aCell & "-" & aCell.Offset(, 2)) = aCell.Row End If Next Application.ScreenUpdating = False With Worksheets("B") '←実際のシート名にする For Each aCell In .Range("A2", .Cells(.Rows.Count, "A").End(xlUp)) RW = dicT(aCell & "-" & aCell.Offset(, 4)) If IsNumeric(RW & "") Then aCell.Range("D1,F1:H1").Copy wsDest.Cells(RW, "D") Else msg = msg & vbCrLf & aCell & "-" & aCell.Offset(, 4) End If Next End With dicT.RemoveAll Application.ScreenUpdating = True If InStr(msg, vbCrLf) Then MsgBox msg End If End Sub |
[196388] Re[2]: AシートへBシートのデータ(入力日・金額1・金額2・金額3)の貼付について- ■記事引用/メール受信=OFF■ □投稿者/ VBA初心者 -(2025/01/01(16:20)) □U R L/ 半平太さん、早速にご返信ありがとうございます。 >例では、金額1,2,3 しかありませんが、この列は今後増えていくのですか? 金額1,2,3のみです。列は増えません Aシートの顧客番号は実際には500先ありますので Aシートの行は 2000=500X4(年月)で固定です よろしくお願いいたします。 |
[196387] Re[1]: AシートへBシートのデータ(入力日・金額1・金額2・金額3)の貼付について- ■記事引用/メール受信=OFF■ □投稿者/ 半平太 -(2025/01/01(14:56)) □U R L/ 例では、金額1,2,3 しかありませんが、この列は今後増えていくのですか? |
[196386] AシートへBシートのデータ(入力日・金額1・金額2・金額3)の貼付について- ■親トピック/記事引用/メール受信=ON■ □投稿者/ VBA初心者 -(2024/12/31(23:53)) □U R L/ 1.Aシート(記入元)・・・書き込み前 A B C D E F G 1 顧客番号 名前 年月 入力日 金額1 金額2 金額3 2 101 あ 202404 3 101 あ 202405 4 101 あ 202406 5 101 あ 202407 6 104 え 202404 7 104 え 202405 8 104 え 202406 9 104 え 202407 10 107 き 202404 11 107 き 202405 12 107 き 202406 13 107 き 202407 2.Bシート・・・入力データ A B C E D F G H 1 顧客番号 名前 漢字名 入力日 年月 金額1 金額2 金額3 2 101 あ 亜 2024/6/10 202405 1 4 5 3 101 あ 亜 2024/9/30 202406 2 5 7 4 107 き 着 2024/6/30 202404 2 5 107 き 着 2024/12/21 202407 3 8 6 7 8 3.Aシート(記入元)・・・書き込み後 A B C D E F G 1 顧客番号 名前 年月 入力日 金額1 金額2 金額3 2 101 あ 202404 3 101 あ 202405 2024/6/10 1 4 5 4 101 あ 202406 2024/9/30 2 5 7 5 101 あ 202407 6 104 え 202404 7 104 え 202405 8 104 え 202406 9 104 え 202407 10 107 き 202404 2024/6/30 2 11 107 き 202405 12 107 き 202406 13 107 き 202407 2024/12/21 3 8 説明内容 AAシート(書き込み前台帳)にBシートキーとなる顧客番号・年月のデータが あれば それぞれ該当の行・列に入力日・金額1・金額2・金額3を貼付したいです 例として書き込み後は 3.Aシート のようになります どなたか上記のようなVBA(コーディング)について ご教示頂ければ幸いです よろしくお願いいたします (WINDOWS11です) ++++++++++++++++++++ OS ⇒OTHER Version⇒Excel 2007 ++++++++++++++++++++ |