Excel VBA質問箱 IV

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

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


28198 / 76732 ←次へ | 前へ→

【53837】Re:フォーマットの異なる複数シートのマージ
お礼  hiro  - 08/2/8(金) 17:06 -

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

ichinoseさんのコードで、約6万件のデータをマージしたところ
1秒足らずで処理を終えることができました^^

このコードの肝は、予め必要となるrangeを取得しておいて、
対象となるセル全てを対象に、数式を一気に書き込むところですかね。

こんな方法があったとは驚きです。

ありがとうございました!

>▼hiro さん:
>おはようございます。
>
>標準モジュールに
>'==================================================
>Sub main()
>  Dim arng As Range
>  Dim brng As Range
>  With Worksheets("sheet1")
>    Set arng = .Range("a1", .Cells(.Rows.Count, "a").End(xlUp)).Resize(, 4)
>    End With
>  With Worksheets("sheet2")
>    Set brng = .Range("a1", .Cells(.Rows.Count, "a").End(xlUp)).Resize(, 3)
>    End With
>  With Worksheets("sheet3")
>    .Range(arng.Address).Value = arng.Value
>    .Range("e1").Value = "所属"
>    With .Range("e2", _
>       arng.SpecialCells(xlCellTypeLastCell).Offset(0, 1).Address)
>     .Formula = "=vlookup(a2," & brng.Address(, , , True) & ",3,false)"
>     End With
>    End With
>End Sub
>
>で試してください

0 hits

【53810】フォーマットの異なる複数シートのマージ hiro 08/2/8(金) 1:18 質問
【53812】Re:フォーマットの異なる複数シートのマージ ichinose 08/2/8(金) 8:13 発言
【53837】Re:フォーマットの異なる複数シートのマージ hiro 08/2/8(金) 17:06 お礼

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