前提・実現したいこと
エクセルシートに項目(列)を追加して、データを入力する様にしたいのですが、900行くらいのうち、100行くらいで、「処理が完了しました」とメッセージが表示され、正常終了します。
データは900行くらいまであるので、最後まで入力されて正常終了になるはずなのですが、必ず同じ行まで入力された状態で、終了してしまいます。
環境は、VB.NET(Visual Studio v15.7.3)です。
追記
書込みは、sheet2のセルからsheet1のセルへ書込みをしています(書込みとは言わない?(貼り付け?))
ファイル保存のコードを追記しました。
sheet1とsheet2でA列(品名)が一致したらsheet2のC列とD列をsheet1のB列とC列に書込みます。
発生している問題・エラーメッセージ
プログラム的には、正常終了していますが、保存されるファイルを見ると、データが途中までしか入力されていない状態になっている。
該当のソースコード
For i = 2 To MaxRow If sheet1.Cell(i, 1).Value = "" Then ElseIf sheet1.Cell(i, 1).Value = sheet2.Cell(i, 1).Value Then For j = 2 To MaxRow2 If sheet2.Cell(j, 1).Value = sheet1.Cell(i, 1).Value Then sheet1.Cell(i, 2).Value = sheet2.Cell(j, 3).Value sheet1.Cell(i, 3).Value = sheet2.Cell(j, 4).Value AA = sheet1.Cell(i, 1).Value BB = sheet2.Cell(j, 3).Value End If Next End If Next 'シート名を変更して保存 sheet1.Name = "sheet_test" 対象ファイル.SaveAs("C:\Users\xxxxxxx\TestBook.xlsx")
試したこと
最終行MaxRow,MaxRow2を共に900等に指定してみても結果は同じでした。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー