初めて投稿します。
よろしくお願いいたします。
エクセルのマクロ(VBA)について実現できないか質問です。
①に入力された値がありまして 行数の値をもとに
②のように展開したいのですが実現可能でしょうか。
行数に入ってる値をもとに行を挿入しコピーを行いたいと思っております。
何か参考になる記事かこちらの仕様に関してアドバイスの程、、よろしくお願いいたします。
追記でございます。
ここまでは 他の回答を参考に実現できております。
行は挿入できるものの コピーも同時に実行したいと考えております。
ご教授いただけると幸いです。
Sub InsertRow1() Dim i As Long Dim intStart As Long Dim intCol As Long Dim cntBlank As Long Dim AddCnt As Long Dim msg_1 As String intStart = 2 '開始する行数 intCol = 2 '数字を読み込む列 i = intStart '追加する行数の先頭位置 Dim j As Integer '追加する行数の中に既に空白行があったらその行数分 msg_1 = "B列に指定されている変数分追加しますか?" If MsgBox(msg_1, vbYesNo) = vbNo Then Exit Sub '行を追加してよいかのポップアップを出す Application.ScreenUpdating = False '処理終了まで画面表示はそのまま '最終行の1行上から上へ読み込む For i = Cells(Rows.Count, intCol).End(xlUp).Row - 1 To intStart Step -1 Select Case Cells(i, intCol).Value Case "" cntBlank = cntBlank + 1 '空白行カウント Case Is >= 2 AddCnt = Cells(i, intCol).Value - cntBlank '追加する行数計算 'AddCnt = Cells(i, intCol).Value - cntBlank - 1 '追加する行数計算 If AddCnt > 0 Then Range(Rows(i + 1), Rows(i + AddCnt)).Select Selection.Insert '選択された行数分追加 End If cntBlank = 0 Case Else cntBlank = 0 End Select Next i Application.ScreenUpdating = True End Sub
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/15 01:40