Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Zeichen in String einfügen

Betrifft: Zeichen in String einfügen von: Juergen Huber
Geschrieben am: 14.04.2015 11:44:58

Hallo,
ich bin neu hier.
Ich suche schon sehr lange eine Lösung für mein Problem und hoffe hier Hilfe zu erhalten.
Folgendes Problem:
ich gebe einen Variablen String(Zeichenfolge) max. etwa 500 Zeilen in einer Spalte.
Der String (Zeichenfolge) kann in seiner Länge stark Variieren.
Die Zeichenfolge kann sowohl aus einer Zahlen und Buchstabenkombination bestehen, aber auch nur aus eine Zahlenfolge.
Die letzten 2 Zeichen sind immer Zahlen.
Vor diesen beiden Zahlen soll immer ein "/" eingefügt werden.
Die Ausgabe soll automatisch in der gleichen Zelle ausgegeben werden in der der Eintrag erfolgt (mit verlassen der Zelle),
vergleichbar mit der Benutzerdefinierten Formatierung.
Es wäre toll, wenn mir jemand helfen könnte.
Im voraus schon mal vielen Dank

  

Betrifft: AW: Zeichen in String einfügen von: lupo1
Geschrieben am: 14.04.2015 11:56:52

B1: =LINKS(A1;LÄNGE(A1)-2)&"/"&RECHTS(A1;2)


  

Betrifft: AW: Zeichen in String einfügen von: Juergen Huber
Geschrieben am: 14.04.2015 12:03:11

Hallo Lupo1,

ganz nett von Dir , aber die Lösung als Formel wäre nicht das Problem gewesen.
Hätte ich vielleicht erwähnen sollen.
Sorry mein Fehler.
Nein, ich benötige eine VBA Lösung


  

Betrifft: außerdem, ... von: Oberschlumpf
Geschrieben am: 14.04.2015 12:08:23

...Hi lupo1...

...erfüllt deine Formel auch nicht ganz das Gewünschte.

Gewünscht war ja, dass die Änderung in genau der Zelle geschieht, in der ein Text eingefügt wurde.

Deine Lösung benötigt mindestens eine Hilfszelle (B1) oder eben die ganze Spalte B.

Ciao
Thorsten


  

Betrifft: eben als Formel, jetzt wie gefragt als VBAEreignis von: lupo1
Geschrieben am: 14.04.2015 12:05:09

rechtsklicke Tabellenreiter, Code Anzeigen, einfügen:

Private Sub Worksheet_Change(ByVal Target As Range)
   With Target
      If .Column = 1 Then
         Application.EnableEvents = False
         .Value = Left(.Value, Len(.Value) - 2) & "/" & Right(.Value, 2)
         Application.EnableEvents = True
      End If
   End With
End Sub
Achtung: Betrifft nur Eingabe in Spalte A (Column = 1)


  

Betrifft: AW: eben als Formel, jetzt wie gefragt als VBAEreignis von: Juergen Huber
Geschrieben am: 14.04.2015 12:10:44

Hallo lupo1,

klapp genau so wie ich es mir gewünscht habe.
Vielen herzlichen Dank


  

Betrifft: AW: Zeichen in String einfügen von: UweD
Geschrieben am: 14.04.2015 12:09:00

Hallo


- rechtsclick auf den Tabellenblattreiter
- Code anzeigen
- Code hier einfügen

Ist auf Zelländerungen der Spalte A begrenzt (Änderbar)


Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo Fehler
    Dim RNG As Range
    Set RNG = ActiveSheet.Range("A:A") 'anpassen
    
    If Not Intersect(Target, RNG) Is Nothing Then
        If Target.Count = 1 Then
            Application.EnableEvents = False
            Target = Left(Target, Len(Target) - 2) & "/" & Right(Target, 2)
        Else
            MsgBox "Nur eine Zelle erlaubt"
        End If
    End If
Fehler:
    If Err.Number <> 0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err.Clear
    Application.EnableEvents = True
End Sub

Gruß UweD


 

Beiträge aus den Excel-Beispielen zum Thema "Zeichen in String einfügen"