空白のセルが見つかった場合、ループを実行するソリューションを見つけるのに問題があります。これまでにVBAを使用したのは初めてですが(最後のほうがいいと思いますが)、事前に助けとアドバイスをいただき、ありがとうございます。Excel VBA:空白のセルが見つかった場合ループを終了する方法
基本的には、値の列(「単位」)に対して、各値をコピーして入力ボックスに貼り付け、結果をコピーして別の場所に貼り付け、「単位"列は空白です。
この状態をどのように入れるべきかアドバイスをいただければ幸いです。私は様々な "Do while ..."や "If ..."などを試みましたが、構造を壊すことはできませんでした。
Sub ResultsTable()
Application.ScreenUpdating = False
Dim UnitRows As Integer
UnitRows = Range("Units").Rows.Count
Do While Range("Units").Cells(i, 1).Value <> ""
i = i + 1
Range("Units").Cells(i, 1).Copy
Range("Input").PasteSpecial xlPasteValues
Range("ABBA").Copy
Range("ABBAO").Cells(i, 1).PasteSpecial xlPasteValues
Range("BABBA").Copy
Range("BABBAO").Cells(i, 1).PasteSpecial xlPasteValues
Range("CABBA").Copy
Range("CABBAO").Cells(i, 1).PasteSpecial xlPasteValues
Range("DABBA").Copy
Range("DABBAO").Cells(i, 1).PasteSpecial xlPasteValues
Range("Units").Copy
Range("UnitsOutput").PasteSpecial xlPasteValues
Application.ScreenUpdating = True
End Sub
コードを4つのスペースでインデントしてください。正しく表示されるようにしてください。 – jsotola
do-whileループはどうですか? 'Do while Range(" Units ")。セル(i、1).Value <>" "'ループ内に 'i = i + 1'行を追加することを忘れないでください。 – newacc2240
Marcoがループをスキップして空白でスキップしたいが、次の行を続行したい場合は、If文( 'Units ')をif文に追加することができます。あなたの現在のforループの中に何かがあります。 – newacc2240