Quantcast
Channel: 質問!ITmedia 新着質問(Windows系OS/698)
Viewing all articles
Browse latest Browse all 3635

Excelマクロの大量行の処理速度を上げたい

$
0
0
Excel VBA 勉強中です。 Excel VBA を利用して大量の行の処理をしたいのですが、時間がかかってしまい、場合によっては固まってしまうので困っています。 色々と調べながら自分で作ってみたのですが、少量の行で試しに行った時にはきちんと動いたのですが、大量の行で行った時には固まってしまう(動かなくなってしまう)ので困っています。 転記先(シート1)には番号とコードが入っていて、基データ(シート2)にある番号とコードが一致した場合のみ基シート(シート2)にある日付を転記先(シート1)へ転記させたいと思っています。 ・シート1にもシート2にもそれぞれ、データが10000行ぐらいあります。 シート1(転記先) D列   E列    I列 番号   コード   日付←転記させたいセル 12345   123    4/30 23456   234 34567   345 シート2(基データ) B列   G列    I列 番号   コード   日付 23456   123    3/31 12345   123    4/30 45678   345    5/1 Dim sh1, sh2 Set sh1 = Sheets("シート1")  ’転記先 Set sh2 = Sheets("シート2")  ’基データ d = sh1.Range("A65536").End(xlUp).Row On Error Resume Next For i = 2 To d r = 2 d1 = sh1.Cells(i, 4) & sh1.Cells(i, 5) d2 = sh2.Cells(r, 2) & sh2.Cells(r, 7) Do While d2 <> "" If d1 = d2 Then sh1.Cells(i, 9) = sh2.Cells(r, 9) Exit Do End If r = r + 1 d2 = sh2.Cells(r, 2) & sh2.Cells(r, 7) Loop Next i どこがいけないのか、教えていただけると大変助かります。

Viewing all articles
Browse latest Browse all 3635

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>