Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Wert aus Inputbox "zerschneiden"

Wert aus Inputbox "zerschneiden"
23.01.2019 10:43:12
Theresa
Hallo Zusammen,
ich bin ganz neu hier... Bisher hat mir die Suche im Forum bei meinen Fragen immer helfen können. Nun benötige ich doch eine speziellere Antwort und hoffe auf Eurer Know-How.
Folgende Aufgabe: Ich möchte, dass der User beim Klicken auf die Schaltfläche eine Inputbox angezeigt bekommt, in die er ein Quartal im Format "q/yyyy" eingibt.
Den eingegebenen Wert soll das Makro weiterverwenden und das Format ändern/berechnen (im Prinzip wird nur die Zeichenreihenfolge Verändert und ein Teil ergänzt).
Am Ende soll in der Variable BI der neue Wert stehen, sodass ich damit weiterarbeiten kann (für den 1. Test gerne auch in Zelle "H2" ausgeben).
Zielformat ist: yyyy-q-1
Hintergrund: Das Zielformat ist notwendig, um im Folgenden den Pivot-Berichtsfilter anzusprechen (der Teil funktioniert schon!)
Public Sub Start()
Dim Quartal As String, sPrompt As String, strCorrect As String, BI As String
Do
sPrompt = "Für welches Quartal benötigst du die Auswertung?" & vbLf & _
"    Verwende bitte folgende Syntax:" & vbLf & _
"   'q/yyyy' "
Quartal = InputBox(prompt:=sPrompt)
Select Case Quartal
Case "2/2018", "3/2018"
strCorrect = "ok"
Case Else
MsgBox "Falsche Syntax oder nicht lieferbares Quartal!"
Exit Sub
End Select
Loop While strCorrect  "ok"
Range("H1") = Quartal
BI = "=RIGHT(Quartal,4)&""-""&LEFT(Quartal,1)&""-1"""
Range("H2") = BI
End Sub

So wird mir in H1 (bei Eingabe von "2/2018") auf dem Tabellenblatt "Feb.18" angezeigt und in H2 kommt "NAME?"
Könnt ihr mir bitte helfen?
Herzlichen Dank!
P.S.: Code ist als
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wert aus Inputbox "zerschneiden"
23.01.2019 10:56:47
Daniel
Hi
um zu verhindern dass Excel bei einem Text, der wie eine Zahl, Datum oder Formel aussieht, versucht den Text entsprechend umzuwandeln, gibt es zwei Möglichkeiten:
a) die Zelle vor der Eingabe mit dem Zahlenformat TEXT formatieren
b) dem Wert das Hochkomma voranstellen
ich würde hier b) verwenden:
 Range("H1") = "'" & Quartal
das zweite Problem entsteht dardurch, dass du den Text für H2 wie eine Formel schreibst und diesen mit "=" beginnen lässt.
besser wäre vermutlich folgendes, hier auch wieder mit Hochkomma, damit keine Umwandlung in ein Datum stattfindet:
BI = "'" & Right(Quartal, 4) & "-" & Left(Quartal, 1) & "-1"
Gruß Daniel
Anzeige
AW: Wert aus Inputbox "zerschneiden"
23.01.2019 11:01:15
Theresa
Hallo Daniel,
was für eine tolle, einfache und schnelle Lösung und da ist es... das Hochgefühl, wenn etwas klappt, wie man es sich gewünscht hat^^
Herzlichen Dank!
AW: Wert aus Inputbox "zerschneiden"
23.01.2019 10:58:42
PeterK
Hallo
    BI = Right(Quartal, 4) & "-" & Left(Quartal, 1) & "-1"
    Range("H1").NumberFormat = "@"  ' zelle als text formatieren 
    Range("H1").Value = BI

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 15 - mit VBAHTML 12.6.0


Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
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