PDA

Vollständige Version anzeigen : Eingabe von Inputbox in nächste freie Spalte


Manuel352
30.08.2017, 17:39
Hallo zusammen,

ich bin relativ neu hier und beschäftige mich auch erst seit kurzem mit der VBA im Bereich Excel.

Nun habe ich gleich mal eine Frage und zwar:

Ich soll eine Inputbox starten um dort Spaltentitel für die zu erstellende Tabelle eintragen zu können. Mit Klick auf ok soll der gerade eingetragene Titel in die nächste freie Spalte eingetragen werden. Solange nicht auf Abbrechen gedrückt wird, soll sich die Inputbox immer wieder öffnen um weitere Spaltentitel eintragen zu können.

Der nächste Spaltentitel soll dann in die darauffolgende Spalte eingetragen werden und so weiter.


Nun was soll ich sagen, Inputbox öffnen und diese benennen, ist kein Problem, aber wie geht es jetzt mit der "Schleife" weiter, dass er immer wieder in die nächste Spalte springt und dort den Eingetragenen Wert einträgt?

Hier mal der code für die Inputbox, den ich bereits habe.

Option Explicit

' Eingabe maske der Spaltentitel
' & vbLf & steht für Leerzeile und / oder Zeilenumbruch

Sub SetTitle()
Dim sTxt As String, sTitle As String
sTitle = "Eingabe der Spaltentitel:"
sTxt = Inputbox(prompt:="Bitte Spaltentitel mit Einheit eingeben:" & vbLf & vbLf & "Spaltentitel in [ ]", Title:=sTitle)
If sTxt = "" Then Exit Sub

End Sub




Ich danke jedem der mir weiterhelfen kann.

Gruß Manuel

aloys78
30.08.2017, 18:02
Hallo Manuel,

mein Vorschlag auf Basis Deines Codes:
Option Explicit

' Eingabe maske der Spaltentitel
' & vbLf & steht für Leerzeile und / oder Zeilenumbruch

Sub SetTitle()
Dim sTxt As String, sTitle As String
sTitle = "Eingabe der Spaltentitel:"
Dim c As Long ' Spalten#
c = 1 ' mit Spalte 1 starten

Do
sTxt = InputBox(prompt:="Bitte Spaltentitel mit Einheit eingeben:" & vbLf & vbLf & "Spaltentitel in [Spalte " & c & "]", Title:=sTitle)
If sTxt = "" Then Exit Do
Cells(1, c) = sTxt
c = c + 1
Loop
End Sub
Gruß
Aloys

Manuel352
30.08.2017, 18:09
Hallo Aloys,

vielen vielen Dank.

Macht genau das was ich wollte :)

Ich hoffe ich lern mich schnell ein mit VBA und Makros, da ich das jetzt täglich brauche.

Gruß Manuel