Das Archiv des Excel-Forums
Eingabe in Zelle automatisch ändern ( VBA?)
Betrifft: Eingabe in Zelle automatisch ändern ( VBA?)
von: Thomas
Geschrieben am: 12.10.2003 16:22:13
Hallo,
ist es möglich, in Excel mit VBA folgende Erleichterung in Excel zu erzielen:
Vor mir befindet sich eine Liste mit unterschiedlichen Textangaben z.b.:
1 = München
2 = Berlin
3 = Hamburg
In Excel möchte ich mir die Arbeit ersparen, die einzelnen Punkte, z.Z. sind es "37", ewig einzutragen. Ideal wäre es, in die Zelle die Zahl einzutragen und nach der Eingabe wird durch VBA der richtige Name übernommen ( unabhängig von einer bestimmten Zelle).
Zum Beispiel:
Eingabe in Zelle "3" -> Nach Verlassen der Zelle steht dort "Hamburg".
Ist das möglich?
Gruß
Thomas
Betrifft: AW: Eingabe in Zelle automatisch ändern ( VBA?)
von: Hajo_Zi
Geschrieben am: 12.10.2003 16:27:44
Hallo Thomas
damit jann aber in keiner Zelle maehr die Zahlen 1 bis 37 eingegeben werden.
In VBA unter der Tabelle
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 Then
Select Case Target.Value
Case 1
Target = "München"
Case 2
Target = "Bad Doberan"
End Select
End If
End Sub
Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
http://home.media-n.de/ziplies/
Betrifft: AW: Eingabe in Zelle automatisch ändern ( VBA?)
von: heinz
Geschrieben am: 12.10.2003 16:28:14
da ginge auch mit
extras
autokorrektur
das könntest du ja mit dem recorder aufzeichen
und für deine zwecke umgestalten
Betrifft: AW: Eingabe in Zelle automatisch ändern ( VBA?)
von: PeterW
Geschrieben am: 12.10.2003 16:28:52
Hallo Thomas,
mit VBA: Rechtsklick auf das Tabellenblatt, Code anzeigen. In das sich öffnende Fenster folgenden Code kopieren. Er reagiert auf Spalte A, die ersten 3 Zahlen stehen im Code, du kannst weitere Zeilen nach dem gleichen Strickmuster einfügen:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
Application.EnableEvents = False
Select Case Target
Case 1
Target = "Hamburg"
Case 2
Target = "München"
Case 3
Target = "Berlin"
Case Else
Target = "keine gültige Eingabe"
End Select
Application.EnableEvents = True
End Sub
Eventuell reicht dir auch schon, das Ganze über Daten - Gültigkeit zu realisieren.
Gruß
Peter
Betrifft: AW: Eingabe in Zelle automatisch ändern ( VBA?)
von: Josef Ehrensberger
Geschrieben am: 12.10.2003 16:32:02
Hallo Thomas,
Du kannst unter "Extras/AutoKorrektur"
beliebige Wörter hinzufügen, durch die bestimmte kürzel ersetzt
werden sollen.
Allerdings würde ich keine Ziffern verwenden, da dann bei jeder
Eingabe diese durch deine Wörter ersetzt werden.
Ausserdem musst du die Option "Korrektur während der Eingabe aktivieren.
Gruß Sepp
Betrifft: AW: Eingabe in Zelle automatisch ändern ( VBA?)
von: Beni
Geschrieben am: 12.10.2003 16:51:19
Hallo Thomas,
versuche es mit diesem Code.
Gruss Beni
Private Sub worksheet_Change(ByVal Target As Range)
i = Target.Value
If IsNumeric(Target) = False Then Exit Sub
Target.Value = Cells(i, 1).Value
End Sub
Betrifft: Vielen, vielen Dank für die zahlreichen Antworten!
von: Thomas
Geschrieben am: 12.10.2003 18:16:59
...
Excel-Beispiele zum Thema " Eingabe in Zelle automatisch ändern ( VBA?)"