Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
516to520
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
516to520
516to520
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Probleme mit VBA

Probleme mit VBA
16.11.2004 17:57:08
Stephan
Hallo,
mit untenstehendem VBA-Code lasse ich eine Zeilennummer eingeben, unter der eine neue Zeile eingefügt werden soll.
Dazu 2 Fragen:
1. Wie kann ich verhindern, dass bei "Abbrechen" der Inputbox ein Laufzeitfehler entsteht?
2. Wie kann ich eine Fehlermeldung bei falscher Eingabe (z.B. Eingabe Bin euch wirklich sehr Dankbar für etwaige Hilfestellungen!!
LG, Stephan

Sub Einfügen()
' Zeile_Hinzufügen_Maßnahmenplanung Makro
' Unter der angegebenen Zeilennummer wird eine neue Zeile eingeschoben
Dim zlnr As Integer
zlnr = InputBox("xy", "ab")
If Cells(zlnr, 51).Value = 1 Then
MsgBox "cd"
Exit Sub
End If
Rows(zlnr & ":" & zlnr).Select
Selection.Insert Shift:=xlDown
Range(zlnr + 1 & ":" & zlnr + 1).Select
Selection.AutoFill Destination:=Range(zlnr & ":" & zlnr + 1), Type:=xlFillSeries
Range("a" & zlnr).Select
End Sub

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
InputBox Eingabe überprüfen
16.11.2004 18:20:19
Josef
Hallo Stefan!
zB. so!

Sub Einfügen()
' Zeile_Hinzufügen_Maßnahmenplanung Makro
' Unter der angegebenen Zeilennummer wird eine neue Zeile eingeschoben
Dim zlnr As Integer
Do
zlnr = Application.InputBox("xy", "ab", Type:=1)  'Type:=1 - Nur Zahlen erlaubt!
If zlnr = False Then Exit 

Sub   'Abbrechen gedrückt!
If zlnr > 19 Then Exit Do       'Zeilennummer kleiner 20 - zurück zur Eingabe!
Loop
If Cells(zlnr, 51).Value = 1 Then
MsgBox "cd"
Exit Sub
End If
Rows(zlnr & ":" & zlnr).Insert Shift:=xlDown
Range(zlnr + 1 & ":" & zlnr + 1).AutoFill _
Destination:=Range(zlnr & ":" & zlnr + 1), Type:=xlFillSeries
Cells(zlnr, 1).Select
End Sub

Gruß Sepp
Anzeige
AW: InputBox Eingabe überprüfen
16.11.2004 18:30:10
Stephan
Hallo Sepp - vielen Dank für die Mühe, funktioniert super.
Allerdings habe ich einen Laufzeitfehler, wenn ich z.B. 1.1 eingebe - weißt du warum?
Liebe Grüße, Stephan
AW: InputBox Eingabe überprüfen
Sven
1.1 ist keine Zahl! Jedenfalls nicht im deutschen Excel.
mfg Sven
AW: InputBox Eingabe überprüfen
16.11.2004 18:52:36
Josef
Hallo Stephan!
Deine Variable ist als Integer deklariert, die eingabe von "1.1"
wird von VBA als Datum interpretiert (1.1.04) und dieses Datum
hat als Zahl den Wert 37987 und liegt damit ausserhalb des Bereiches von Integer-Variablen!
Du kannst die Variable als Long deklarieren, dann würde in unserem Beispiel
eine Zeile nach Zeile 37987 eingefügt.
Gruß Sepp
Anzeige
Vielen Dank!!! o.t.
16.11.2004 18:59:42
Stephan

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige