Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema InputBox
BildScreenshot zu InputBox InputBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen

Zeilen einfügen

Betrifft: Zeilen einfügen
von: Thomas
Geschrieben am: 12.04.2003 - 13:20:29

ich bins wieder ich komme mit dem was du schreibst nicht zu recht bin wahrscheinlich zu doof .wo kommt denn der text rein?

(InsertRows ist als Long dimensioniert, wenn "InputBox-Abbruch" wird versucht, einen String-Wert ("") zuzuweisen, da dies nicht geht wird ein Laufzeitfehler erzeugt. Normalerweise recht es, wenn man weiss, was man tut...

Wenn es benutzerfreundlicher sein soll, InsertRows as Variant dimensionieren und nach InputBox auf Numeric und/oder Leer ( = "" ) prüfen und damit Fehler verhindern.)


Private Sub CommandButton1_Click()
Dim Zeile As Long, Spalte As Integer
Dim InsertRows As Variant
Dim i As Long
Zeile = Selection.Row + 1
InsertRows = InputBox("Bitte Anzahl der einzufügenden Zeilen eingeben:")
For i = 1 To InsertRows Step 1
Selection.Offset(i, 0).EntireRow.Insert Shift:=xlDown
Selection.EntireRow.Copy Selection.Offset(i, 0).EntireRow
For Spalte = 1 To 256
If Not Cells(Zeile - 1 + i, Spalte).HasFormula Then Cells(Zeile - 1 + i, Spalte) = ""
Next Spalte
Next i
End Sub

thomas


  

Re: Zeilen einfügen
von: Jens
Geschrieben am: 12.04.2003 - 13:26:19

Ich weis jetzt nicht zu welchen Post diese Frage gehört aber trotzdem mal ne Antwort:
Ich hab mal diese Zeile noch eingefügt.
If InsertRows = "" or Not IsNummeric(InsertRows) then Exit Sub
auf Deutsch
Wenn InsertRows = Nicht (Abrechen oder keine Eingabe) oder InsertRows ist keine Zahl dann Programm Ende.

Private Sub CommandButton1_Click()
Dim Zeile As Long, Spalte As Integer
Dim InsertRows As Variant
Dim i As Long
Zeile = Selection.Row + 1
InsertRows = InputBox("Bitte Anzahl der einzufügenden Zeilen eingeben:")

If InsertRows = "" or Not IsNummeric(InsertRows) then Exit Sub

For i = 1 To InsertRows Step 1
Selection.Offset(i, 0).EntireRow.Insert Shift:=xlDown
Selection.EntireRow.Copy Selection.Offset(i, 0).EntireRow
For Spalte = 1 To 256
If Not Cells(Zeile - 1 + i, Spalte).HasFormula Then Cells(Zeile - 1 + i, Spalte) = ""
Next Spalte
Next i
End Sub

Gruß Jens.

  

Re: Zeilen einfügen
von: thomas
Geschrieben am: 13.04.2003 - 11:36:36

erst einmal großen dank,aber es klappt nicht.
thomas

 

Beiträge aus den Excel-Beispielen zum Thema "Zeilen einfügen"