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

Forumthread: Kann man bei "vbTab" die Länge des TAB ändern

Kann man bei "vbTab" die Länge des TAB ändern
25.09.2015 09:04:16
Bernd
Hallo Zusammen,
hab mal eine bescheidene Frage an die VBA Götter.
Kann man bei "vbTab" die Länge des TAB ändern ? und wenn wie.
Liebe Nordhessische Grüsse
Bernd

Anzeige

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kann man bei "vbTab" die Länge des TAB ändern
25.09.2015 09:11:50
Daniel
Hi
meines wissens nach: NEIN
mit vbTab fügst du nur ein einzelnes Zeichen in den Text ein, hierbei handelt es sich ähnlich beim LineFeed um ein Steuerzeichen, welches nicht als Zeichen dargestellt wird, sondern eine bestimmte Aktion ausführt, hier den Tabulatorsprung.
wie weit dieser Tabulator-Sprung dann tatsächlich wird, hängt von dem System ab, in welchem du dir den Text dann anzeigen lässt, das kannst du aber über den Text selbst nicht beeinflussen, dazu müsstest du die Tab-Marker im anzeigenden Programm selbst verschieben (wenn das überhaupt möglich ist).
Gruß Daniel

Anzeige
AW: Kann man bei "vbTab" die Länge des TAB ändern
25.09.2015 11:17:50
Bernd
Hallo Daniel,
danke für die Bestädigung, von dem was ich mir schon fast dachte.
Ich hab die Problematik die ich beim DatenImport hatte nun anders gelöst, in dem ich die Importierten Daten mit Leerzeichen auf ein definiertes Mass fülle:

While Len(zeilenarr(0)) 
und vbTab ist leider eine Programmkonstante ..... ;(
Bis denne....

Anzeige
AW: Kann man bei "vbTab" die Länge des TAB ändern
25.09.2015 11:23:29
Daniel
Hi
warum While-Wend?
wenn du ein bestimmtes Zeichen wiederholt eingeben willst, nutze die Funktion STRING:
STRING(4, "x") ergibt "xxxx"
Gruß Daniel

AW: Kann man bei "vbTab" die Länge des TAB ändern
25.09.2015 12:36:42
Bernd
bei Festen Breiten ja, aber wenn Namen eingegeben werden, sind die unterschiedlich lang sollen aber geordet in einer Listbox ( 3Spaltig) auftauchen deshalb While Len
Gruß Bernd

Anzeige
AW: Kann man bei "vbTab" die Länge des TAB ändern
25.09.2015 12:59:45
Daniel
Hi
kleiner Tip für für ich: Man in VBA überall dort, wo eine feste Zahl steht, statt dieser Zahl meistens auch eine Variable oder eine Formel zur Berechung des Wertes einsetzen.
txt = "DeinText"
txt = txt & string(20 - Len(txt), " ")
'oder
txt = left(txt & string(20, " "), 20)
wobei die erste Variante nur dann fehlerfrei funktioniert, wenn der Text selbst nicht länger als 20 Zeichen ist.
Gruß Daniel

Anzeige
AW: Kann man bei "vbTab" die Länge des TAB ändern
25.09.2015 09:21:01
Matthias
Hallo
Dim wieoft
wieoft = 4
MsgBox "Hallo" & Application.WorksheetFunction.Rept(vbTab, wieoft) & "!"
Gruß Matthias

@Matthias verwende in VBA String(...) oT.
25.09.2015 10:13:03
Tino

Sorry, verstehe nicht was Du meinst. owT
25.09.2015 10:33:42
Matthias

Anzeige
so...
25.09.2015 11:17:38
Tino
Hallo,
Sub Beispiel()
Dim wieoft&
wieoft = 4
MsgBox "Hallo" & Application.WorksheetFunction.Rept(vbTab, wieoft) & "!"
MsgBox "Hallo" & String(wieoft, vbTab) & "!"
End Sub
Gruß Tino

AW: so...
25.09.2015 11:19:32
Bernd
;)
herzlichen Dank für die Erheiterung ....

Anzeige
:-(
25.09.2015 11:30:16
Matthias
Hallo
Gut zu wissen das Dich meine Hilfe erheitert hat :-(
Ich wollte Dir nur helfen!
Gruß Matthias

AW: :-(
25.09.2015 11:30:57
Bernd
Ist Dankend auch angekommen .....

jetzt stehe ich bei Euch auf dem Schlauch?! oT.
25.09.2015 11:50:21
Tino
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Länge des Tabulators in VBA anpassen


Schritt-für-Schritt-Anleitung

  1. Verwendung von vbTab:

    • Um einen Tabulator in einem String einzufügen, kannst du vbTab verwenden. Beachte jedoch, dass die Länge des Tabulators nicht verändert werden kann, da vbTab ein Steuerzeichen ist.
  2. Tabulator mit Leerräumen füllen:

    • Wenn du die Länge des Tabulators anpassen möchtest, kannst du Leerräume verwenden. Hier ein Beispiel, wie du mit einer Schleife arbeitest:
      While Len(zeilenarr(0)) < gewünschteLänge
      zeilenarr(0) = zeilenarr(0) & " "
      Wend
  3. Alternativen zur Verwendung von vbTab:

    • Du kannst die STRING-Funktion nutzen, um mehrere Tabulatoren zu erzeugen:
      txt = "DeinText"
      txt = txt & String(20 - Len(txt), " ")

Häufige Fehler und Lösungen

  • Fehler: Tabulatoren erscheinen nicht gleichmäßig.

    • Lösung: Stelle sicher, dass du die Texte vor dem Setzen des Tabulators auf eine einheitliche Länge bringst, indem du mit Leerzeichen oder der STRING-Funktion arbeitest.
  • Fehler: Verwendung von vbTab führt zu unerwarteten Ergebnissen.

    • Lösung: Beachte, dass vbTab nicht anpassbar ist. Verwende stattdessen Leerräume oder die STRING-Funktion, um die gewünschte Tabulatorlänge zu erreichen.

Alternative Methoden

  • Verwendung von Chr(9):

    • Chr(9) ist der ASCII-Code für einen Tabulator und kann ebenfalls in Strings verwendet werden, jedoch ohne die Möglichkeit, die Länge zu ändern.
  • Tabulator in Excel:

    • In Excel kannst du mit der CHAR(9)-Funktion Tabulatoren in Zellen verwenden. Diese Methode ist jedoch in VBA nicht direkt übertragbar.

Praktische Beispiele

  • Beispiel: Verwendung von vbTab:

    Dim wieoft As Integer
    wieoft = 4
    MsgBox "Hallo" & Application.WorksheetFunction.Rept(vbTab, wieoft) & "!"
  • Beispiel: Verwendung von STRING:

    Sub Beispiel()
       Dim wieoft As Integer
       wieoft = 4
       MsgBox "Hallo" & String(wieoft, vbTab) & "!"
    End Sub

Tipps für Profis

  • Nutze Variablen statt fester Zahlen, um die Flexibilität deines Codes zu erhöhen:

    txt = "DeinText"
    txt = txt & String(20 - Len(txt), " ")
  • Berücksichtige die Länge der Strings, bevor du Tabulatoren oder Leerzeichen hinzufügst, um Fehler zu vermeiden.


FAQ: Häufige Fragen

1. Kann ich die Länge von vbTab ändern? Nein, die Länge von vbTab ist festgelegt und kann nicht verändert werden.

2. Wie kann ich einen anpassbaren Tabulator in VBA erstellen? Verwende stattdessen Leerzeichen oder die STRING-Funktion, um die Darstellung anzupassen.

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