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

Forumthread: Komma einfügen

Komma einfügen
18.10.2012 13:26:55
Andreas
Hallo an alle hier im Forum,
ich möchte gern, das bei jeder Eingabe in die Zellen B20:B34
ein Komma und ein Leerzeichen hinter dem Text eingefügt wird.
Ich brauche das, weil daraus eine Aufzählung in einer Zeile statt findet.
Vielleicht kann mir jemand einen Tip geben, wie ich das am besten
machen kann.
Für eine Antwort wäre ich dankbar.
Andreas

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Komma einfügen
18.10.2012 13:36:46
{Boris}
Hi Andreas,
in das Klassenmodul der entsprechenden Tabelle:

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo ERR_HANDLER
With Target
If Not Intersect(Target, Range("B20:B34")) Is Nothing Then
If .Count = 1 Then
If .Value  "" Then
Application.EnableEvents = False
.Value = .Value & ", "
Application.EnableEvents = True
End If
End If
End If
End With
ERR_HANDLER:
Application.EnableEvents = True
End Sub

VG, Boris

Anzeige
Na, weiß ja nicht; hast du sein Level gesehen? orT
18.10.2012 13:46:53
Luc:-?
;-)
Gruß Luc :-?

Wenn man...
18.10.2012 13:52:12
{Boris}
Hi Luc,
...jedem, der "Kaum Kenntnisse" angibt, einen VBA-Code "verweigert", dann dann gäb`s hier reichlich wenig Codebeispiele ;-)
Und wenn die Rückfrage kommt, wo die Codezeilen denn hinmüssen, na dann werde ich (oder jemand anders) sie auch noch beantworten :-)
Unabhängig davon sind Deine Überlegungen ja nicht schlecht. Möglicherweise braucht`s hier überhaupt keinen Code.
Aber warten wir doch einfach mal ab.
VG, Boris

Anzeige
Sicher! ;-) Bloß bei Ereignissen bin ...
18.10.2012 14:03:54
Luc:-?
…ich als vor (Ur-)Zeiten 'gebranntes Kind' immer lieber vorsichtig, Boris.
Was meine Überlegungen betrifft…
Eine 'Coachess' hat uns mal beigebracht, beim Kunden immer nach dem eigentl Problem zu bohren und sich nicht mit dem ggf sekundär aus einer unzweckmäßigen Herangehensweise resultierenden zu begnügen.
So etwas findet man im Forum nämlich, menschlich durchaus verständlich, leider des Öfteren. ;-)
HG, Luc :-?

Anzeige
AW: Komma einfügen
18.10.2012 14:49:48
Andreas
Hallo Boris
danke dir für deine Mühen, werde und kann es einfügen in das Klassenmenü.
Die Angabe zwecks meiner Kenntniss beruht darauf, wenn ICH dieses unterste Level nicht angebe, bekommt man meistens (logischer weise) die benötigten Infos aber unter der vorraussetzung, man weiss fast alles. Das kann ich halt nicht immer anwenden.
Deshalb gibt es ja diese Auswahl des Wissens.
Muss dann nachfragen, nachfragen, nachfragen....
Die Leute hier im Forum haben alle was auf dem Kasten, es gibt aber Leute auch wie ich....
- Luc
Die datei, um die es sich handelt, bearbeiten ca. 3 Leute hintereinander. Jeder hat ein anderes Arbeitsblatt. Der erste hat halt die Aufzählung untereinander, welche eventuell auch geändert werden müssen.
Im letzten Arbeitsblatt steht dann diese Aufzählung in einer Zeile.
Die sollte eben durch dieses Komma getrennt werden, damit man das gut lesen kann.
Ich hoffe die Angaben reichen - ich wollte ja nur erfahren, wie man halt ein Komma mit Freizeichen einfügt und keinen Roman schreiben.
Dieses habe ich jetzt doch gemacht.
Sollten noch Fragen sein, ich steh gern zur Verfügung.
- Boris
Danke dir nochmals
Andreas

Anzeige
Da fehlen noch ein paar Infos, ...
18.10.2012 13:44:26
Luc:-?
…Andreas;
abgesehen davon, dass „Ich brauche das, weil daraus eine Aufzählung in einer Zeile statt findet“ nicht so recht verständlich ist.
Ansonsten fktioniert das nur mit VBA, Stichwort Ereignisprozedur, es sei denn, du fügst alle Zellinhalte mit einer Fml zusammen. Dabei kannst du das auch dazwischensetzen, was VBA überflüssig machen würde.
Mit oder ohne VBA könnte man die im Endergebnis anscheinend gewünschte Zusammenfassung auch mit jeder Eingabe flfd bilden.
Du siehst also, dass es nicht verkehrt wäre, etwas mehr zum eigentl Ziel der Operation mitzuteilen.
Gruß Luc :-?
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Komma in Excel einfügen: So funktioniert's


Schritt-für-Schritt-Anleitung

Um ein Komma und ein Leerzeichen hinter den Eingaben in den Zellen B20:B34 in Excel einzufügen, kannst du folgenden VBA-Code verwenden. Dieser wird automatisch ausgeführt, wenn du etwas in diese Zellen eingibst.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.
  2. Wähle im Projektfenster die Tabelle aus, in der du das Komma einfügen möchtest (z.B. "Tabelle1").
  3. Klicke mit der rechten Maustaste auf die Tabelle und wähle "Code anzeigen".
  4. Füge den folgenden Code in das Fenster ein:
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo ERR_HANDLER
    With Target
        If Not Intersect(Target, Range("B20:B34")) Is Nothing Then
            If .Count = 1 Then
                If .Value <> "" Then
                    Application.EnableEvents = False
                    .Value = .Value & ", "
                    Application.EnableEvents = True
                End If
            End If
        End If
    End With
ERR_HANDLER:
    Application.EnableEvents = True
End Sub
  1. Schließe den VBA-Editor und teste die Eingabe in den Zellen B20:B34. Bei jeder Eingabe sollte jetzt automatisch ein Komma und ein Leerzeichen hinzugefügt werden.

Häufige Fehler und Lösungen

Fehler: Der VBA-Code funktioniert nicht, wenn ich in die Zellen schreibe.

Lösung: Stelle sicher, dass du den Code im richtigen Tabellenmodul eingefügt hast. Der Code sollte im Modul der entsprechenden Tabelle stehen, nicht in einem allgemeinen Modul.

Fehler: Ich sehe keine Änderungen, wenn ich etwas eingebe.

Lösung: Prüfe, ob die Ereignisse aktiviert sind. Der Code verwendet Application.EnableEvents, um sicherzustellen, dass die Änderungen im Worksheet registriert werden.


Alternative Methoden

Wenn du kein VBA verwenden möchtest, kannst du auch eine Formel nutzen, um Kommas in eine Zelle einzufügen. Angenommen, du hast die Werte in den Zellen B20 bis B34 und möchtest diese in einer Zelle zusammenfassen:

  1. Verwende die folgende Formel in einer anderen Zelle:
=TEXTVERKETTEN(", "; WAHR; B20:B34)

Diese Formel fügt die Werte aus dem Bereich B20:B34 zusammen und trennt sie durch ein Komma.


Praktische Beispiele

  • Wenn du in Zelle B20 "Äpfel" eingibst, wird automatisch "Äpfel, " angezeigt.
  • Gibst du dann in Zelle B21 "Bananen" ein, wird es zu "Bananen, ".

In einem anderen Arbeitsblatt kannst du mit der oben genannten Formel die gesamte Liste so zusammenfassen, dass sie in einer Zeile angezeigt wird.


Tipps für Profis

  • Um das Komma an einer bestimmten Stelle in einer Zahl einzufügen, kannst du die Funktion TEXT verwenden. Beispiel: =TEXT(A1; "0,00") fügt ein Komma als Dezimaltrennzeichen ein.
  • Du kannst die Eingaben in anderen Zellen formatieren, um sicherzustellen, dass sie immer ein Komma enthalten, unabhängig davon, ob der VBA-Code aktiv ist oder nicht.

FAQ: Häufige Fragen

1. Wie kann ich das Komma in eine andere Zelle einfügen? Du kannst den VBA-Code anpassen, indem du den Zielbereich änderst.

2. Gibt es eine Möglichkeit, Kommas in jede Zelle eines Bereichs einzufügen? Ja, du kannst den VBA-Code so anpassen, dass er auf einen größeren Bereich reagiert, z.B. Range("A1:Z100").

3. Funktioniert das auch in Excel Online? VBA funktioniert nicht in Excel Online. Du müsstest auf die Formel-Methoden zurückgreifen.

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