Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Eingabe in Inputbox prüfen

Eingabe in Inputbox prüfen
Peter
Hallo,
ich habe eine InputBox erstellt in der eine Monatsbezeichnung in 3 buchstabiger Abkürzung eingegeben werden soll. Diese Eingabe wird später als Variable an eine SUB übergeben, die ein Arbeitsblatt erstellt und mit dem eingegebenen Wert als Blattnamen versieht. Nun möchte die Eingabe auf Richtigkeit prüfen.
Die Kriterien für die Prüfung sollen folgenden sein:
1. entspricht die Eingabe einem 3 buchstabigen Monatsnamen. Hier wäre es wohl sinnvoll, die Monatsnamen in einem Array zu hinterlegen und diese mit der Eingabe zu vergleichen. Leider weiss ich nicht wie.
2. Ist der Blattname schon vergeben? Wenn ja, soll eine MsgBox erscheinen, die darüber aufklärt und dann soll die InputBox wieder erscheinen. Hier kann man sicher mit OnError arbeiten. Dummerweise wird dieser Fehler aber erst auftreten, wenn ich das Tabellenblatt einfüge. Ich würde die Prüfung aber gerne schon direkt bei der Eingabe durchführen.
In der Hoffnung mich verständlich ausgedrückt zu haben
Peter

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Eingabe in Inputbox prüfen
12.09.2012 10:49:10
Rudi
Hallo,
eine Möglichkeit:
Sub aaaa()
Dim x, wks As Worksheet
x = InputBox("Monat (MMM)?", "Eingabe")
On Error Resume Next
If IsError(DateValue("1." & x)) Then
MsgBox "kein Monat"
Exit Sub
Else
x = Format(DateValue("1." & x), "MMM")
Set wks = Sheets(x)
If Not wks Is Nothing Then
MsgBox x & " gibt es schon", , "gebe bekannt..."
Exit Sub
Else
Set wks = Worksheets.Add(after:=Sheets(Sheets.Count))
wks.Name = x
End If
End If
End Sub

Gruß
Rudi

Anzeige
AW: Eingabe in Inputbox prüfen
12.09.2012 10:53:43
Peter
Super und danke.
Allerdings eine Frage, die mich schon länger beschäftigt.
Ich sehe immer wieder den Befehl
Dim wks As Worksheet
Warum wird das gemacht? Reine Bequemlichkeit um nicht immer Worksheet schreiben zu müssen, oder hat es einen programmiertechnischen Hintergrund.
Peter

Anzeige
AW: Eingabe in Inputbox prüfen
12.09.2012 10:59:51
Rudi
Hallo,
man sollte immer alle Variablen mit dem richtigen Typ deklarieren.
Zusätzlich Option Explicit im Kopf jedes Moduls. Das erzwingt die Deklaration.
Wenn man sich dann vertippt, meckert der Compiler. Ansonsten könnte eine Var auch ohne Wert bleiben.
Bequemer ist es auch.
Gruß
Rudi

Anzeige
AW: Eingabe in Inputbox prüfen
12.09.2012 11:00:48
Rudi
Hallo,
man sollte immer alle Variablen mit dem richtigen Typ deklarieren.
Zusätzlich Option Explicit im Kopf jedes Moduls. Das erzwingt die Deklaration.
Wenn man sich dann vertippt, meckert der Compiler. Ansonsten könnte eine Var auch ohne Wert bleiben.
Bequemer ist es auch.
Gruß
Rudi

Anzeige
AW: Eingabe in Inputbox prüfen
12.09.2012 11:09:26
Peter
Das ist soweit klar, aber könnte ich im vorliegenden Fall nicht einfach in meinem Programmcode den Begriff Worksheet verwenden? Das ist doch eins der VBA Schlüssel- bzw. Befehlsworte, oder? (hoffe das waren die richtigen Begriffe. Ich stecke noch in den Kinderschuhen der Programmierung und bin noch nicht so routiniert im Umgang mit den Fachtermini.)

Anzeige
AW: Eingabe in Inputbox prüfen
12.09.2012 11:25:30
Rudi
In der Datei habe ich viele Tabellenblätter, die spezielle Formatierungen haben (hatten).
Ich habe schon öfters die Formatierung der Zellen wieder auf "Standard" oder auch Zahlen, Datum, Prozent formatiert... nach erneutem öffnen ist wieder alles auf Datum formatiert.
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige