Cantが私のコードが出力を表示しない理由を理解しているようです。新しいVBAプログラマーは基礎を知っているだけなので、どんな助けも役に立つでしょう。IfとDoUntil VBAコードで出力が表示されない
私が欲しいのは、Excelが特定のtext1の特定の列をチェックしてから、それらの値がtext2に達するまでコピーして貼り付けを開始することです。その後、同じ方法で次の5番目の列をチェックします。 自分のコードに変更を提案できる場合。 列のforループを入れないと、私のコードは次のようになります。
Private Sub CommandButton7_Click()
Dim x As Long, y As Long
Dim a As Long
y = 1 'starts with the first column
x = 1 'first row
a = 70 'this is the row where i want the data to be posted
If Cells(x, y).Value = "text1" Then 'check first for specific text
Do Until Cells(x, y).Value = "text2" 'stop here
Cells(a, y).Value = Cells(x, y).Value 'copy that data to new row
Cells(a, y + 1).Value = Cells(x, y + 1).Value 'and the column adjacent to it
x = x + 1
a = a + 1
Loop
Else
x = x + 1 'if not on that row then check the next row
End If
End Sub
最初の行に「text1」がある場合、コードは正常に動作します。そうでなければ、 'x'に1を加えて、それ以外は何もしません。もう1つのループを追加して 'If Cells(x、y).Value =" text1 "'または 'GoTo'文を追加することができます。コードがどのように機能しているかを確認するには、F8キーを押します。これは、行ごとにコードを実行し、結果はすぐにワークシートに表示されます。 –
あんまり大好き!私のelseの後に追加され、それは働いた! @ EganWolf –