2016-09-11 19 views
-4

テーブルを含むExcelスプレッドシートがあります。私は、特定のセルに挿入された値に依存して、与えられた数の行を挿入できるようにしたい。したがって、値が '3'の場合は3行、6の場合は6行などが挿入されます。私はこの問題を処理する方法を知らない。誰も私がこの問題を解決するのを助けることができますか?セルの値に基づいて行を挿入する方法

+0

vbaが必要です。タグを追加しました。しかし、より多くの情報が必要です。どのように例ですか?前後。 – Andreas

+0

@Krishan Kavindaあなたが人々の注目を集めてあなたの投稿への回答を得たいと思えば、より多くの情報、あなたのデータの構造(どのシート、範囲、どの範囲からのコピー)を提供する必要があります。また、あなたのコードの試行を共有する私のケースで –

+0

あなたのチャンスを増やす私は野菜の種類の数を追加したいとユーザーは番号を追加する必要があります。次の行の番号を変更するには –

答えて

1

仮定:

  • セル "A1" は、ユーザーの入力を受け付けたいものです

  • 行が右

セル "A1" の下に挿入されます このコードを使用して、関連するワークシートのコードペインに配置することができます。

Private Sub Worksheet_Change(ByVal Target As Range) 
    If Selection.Count > 1 Then Exit Sub '<-| exit if edited cell is part of a selection larger than 1 cell 

    With Target '<-- reference changed cell 
     If .Address = "$A$1" Then '<--| proceed if it is the "Rows n° to add" cell (change "$A$1" to your actual relevant cell address) 
      If IsNumeric(.Value) Then '<--| proceed if it contains a numeric value 
       If CLng(.Value) > 0 And CLng(.Value) < 3 Then '<--| proceed if its value fits some numeric range (change range bounds to you actual needs) 
        .Offset(1).Resize(CLng(.Value)).EntireRow.Insert 
       End If 
      End If 
     End If 
    End With 
End Sub 

ユーザー入力の入力をカスタマイズできる場所についてのコメントを参照してください。

関連する問題