2017-04-03 18 views
-1

最初にデータ。セル値に基づいて行を挿入するExcel VBAループ

私は以下のコードを発見し、それがループしない、及びI B1から始まり、B.

のセル値に基づいて行の数を挿入するループを作成する必要が

A   B 
Type 15 5 
Type 2  7 
Type 3  9 

最初のセル(5)+ 1の結果であることがチェックされる次のセルを必要とします。

**

  • 結果は次のようになります。事前に

**

A   B 
Type 1  5 


Type 2  7 





Type 3  9 

etc. 

ありがとう!

+0

あなたのコードはありますか? – Fairy

+0

あなたが言及しているコードは表示されません。また、列Aが 'Type'と1,2,3などで始まる値を持つ場合、単に式を使うことができるVBAを使うのはなぜですか? – ManishChristian

+0

入力と結果をスクリーンショットして、正確な意味が明らかになるようにしてください。コードについては、私はそれを見ることができないと再び言及する必要はないと思います。 – Masoud

答えて

0

私は最初に質問をうんざりしましたが、私は答えを見つけました。

以下を参照してください。

Sub InsertRowsIf() 
Dim lr As Long, R As Range, i As Long 
lr = Range("B" & Rows.Count).End(xlUp).Row 
Set R = Range("B1", "B" & lr) 
Application.ScreenUpdating = False 
For i = R.Rows.Count To 1 Step -1 
If IsNumeric(R.Cells(i, 1).Value) And Not IsEmpty(R.Cells(i, 1)) Then 
    R.Cells(i, 1).Offset(1, 0).Resize(R.Cells(i, 1).Value).EntireRow.Insert 
End If 
Next i 

Application.ScreenUpdating = Trueの End Subの

関連する問題