1.6k Aufrufe
Gefragt in Tabellenkalkulation von
Hallo ,
ich habe mich jetzt schon stundenlang durch die Foren gelesen und komme nicht auf meine Lösung.
( Ich stehe auch auf Kriegsfuß mit den benutzerdef. Formatierungen )
Frage: ich möchte -- nur aus optischen Gründen -- nicht zum Berechnen --
in der Zelle A1 z.B.: "CH4056" oder "FR68300" eingeben (das sind Postleitzahlen)
und ich möchte das sie dann so aussehen : CH - 4056 oder FR - 68300
Kann man dies mit einer benutzerdefinierten Formel bewerkstelligen ???

Ganz herzlichen Dank - ich würde mich auf eine Lösung freuen.

Rudolfo

6 Antworten

0 Punkte
Beantwortet von
Korrektur:

Sollte natürlich : benutzerdefiniertes Format heißen - nicht Formel.

Rudolfo
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo Rudolfo,

das lässt sich über die Formatierung nicht lösen.

Entweder Du gibst den Bindestrich mit ein oder verwendest ein Makro.

Folgender Code wirkt in der gesamten Tabelle, kann aber auf bestimmte Bereiche beschränkt werden.

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Target.Value = Left(Target.Value, 2) & " - " & Mid(Target.Value, 3, 99)
Application.EnableEvents = True
End Sub


Gruß
Rainer
0 Punkte
Beantwortet von
Hallo Rainer,
herzlichen Dank für deine Antwort.

Habe dazu noch zwei Fragen bevor ich das alles eingebe:

1. könntest du mir ein bisschen detailierter die Eingabe des VBA erklären,
-ich möchte dies nur auf ein Blatt ( Register : "Adresse") eingeben.

2. es betrifft die Zellen "C14" und "C20" auf die ich den Code beschränken will,-könntes du mir das noch dazu einfügen ?

Dankeschön
Rudolfo
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo Rudolfo,

dann lautet der Code so:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Not Intersect(Target, Range("C14,C20")) Is Nothing Then
Target.Value = Left(Target.Value, 2) & " - " & Mid(Target.Value, 3, 99)
End If
Application.EnableEvents = True
End Sub


Mache einen Rechtsklick auf die Registerzunge des relevanten Arbeitsblattes und wähle "Code anzeigen", damit gelangst Du in den VBA-Editor.
Den vorher kopierten Code fügst Du im rechten großen Fenster ein und verlässt den Editor wieder.
Nun reagiert das Makro auf Eingaben in den genannten Zellen.

Gruß
Rainer
0 Punkte
Beantwortet von
Hallo,
habe mich mit der VBA Eingabe versucht - und hat dann geklappt,
wäre dann nur noch die Pos.

2. es betrifft die Zellen "C14" und "C20" auf die ich den Code beschränken will,-könntes du mir das noch dazu einfügen - offen.


Danke

Rudolfo
0 Punkte
Beantwortet von
Hallo Rainer,

Dankeschön-

deine Antwort hat sich gerade mit meiner Rückrage überschnitten-

Gruß -

Rudolfo
...