2017-04-26 2 views
0

私はいくつかのExcel VBAコードに取り組んでいます。これは、ユーザー入力の各行ごとに請求書ドキュメントに行を追加し、ユーザー入力の各行をそのドキュメントにコピーします。私は5つの同一のDo Untilループを作成しました(私は例として1つのみを使用しますが、どちらの列からでも同じです)。5ループを1つのループにまとめるExcel VBA

は、どのように私は1つのループの中に5つのループを組み合わせることができるでしょう:

  1. カラムを通って移動して、各ユーザー入力項目
  2. コピー新しく生成された行へのテキストのための別のシートに行を作成私はほとんど独学VBにいるよう
  3. ループが列内の空白のセルに到達すると、それは

適切なコード形式上の任意の提言も歓迎されている次の列に移動しますA.以下は

は私のコードです:

Dim Invoice As Worksheet 
Set Invoice = Sheets("Generated Invoice") 
Case1Start = 1 
CheckRow = 20 
BottomRow = 32 

Do Until InputForm.Cells(CheckRow, Case1Start) = "" 
Worksheets("Generated Invoice").Rows(BottomRow).EntireRow.Select 
Selection.Copy 
Selection.Insert Shift:=xlDown 

Invoice.Cells(BottomRow - 1, 2).Value = InputForm.Cells(CheckRow, Case1Start) 
BottomRow = BottomRow + 1 
CheckRow = CheckRow + 1 
Loop 
+0

を発射するprivate subを使用することができますか? – jjjjjjjjjjj

+0

あなたがしようとしていることはちょっと不明です。サンプルデータと期待される結果を提供できますか? – tigeravatar

答えて

0

あなたは列のためのforループの別を作成するからあなたを停止して何function毎回

Private Sub autofill() { 
    // Your loop 
} 
関連する問題