Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1288to1292
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Eingabe ersetzen/austauschen

Eingabe ersetzen/austauschen
22.12.2012 16:06:47
Burghard
Hallo,
ich suche eine Lösung für dieses Problem:
In den Zellen X2 bis X17 habe ich Namen stehen, daneben in Zelle Y2 bis Y17 steht die laufende Nummerierung (1 bis 16).
Wenn ich in Zelle T2 nun die Zahl "1" eingebe, dann möche ich, dass dort in Zelle T2 der Name aus Zelle X2 erscheint, d.h. dass meine Zahl "1" durch den Namen aus der Zelle X2 automatisch ersetzt werden soll.
Gebe ich beispielsweise in Zelle T2 die Zahl 5 ein, dann möchte ich, dass dort der Name aus Zelle X6 erscheint.
Das soll für den Zellbereich "T2 bis T17" so funktionieren.
Ich möchte diese vereinfachte Eingabe mittels Zahl, damit ich nicht immer die Namen komplett tippen muss.
Hilfe/Lösung wäre nett.
Schönen Gruß
Burghard

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Eingabe ersetzen/austauschen
22.12.2012 16:27:10
Tino
Hallo,
kannst mal so versuchen.
Kommt als Code in die entsprechende Tabelle!
Option Explicit 
 
Private Sub Worksheet_Change(ByVal Target As Range) 
Dim varRow 
If Intersect(Range("T2"), Target) Is Nothing Then Exit Sub 
Application.EnableEvents = False 
    With Range("X2:Y500") 
        varRow = Application.Match(Range("T2"), .Columns(2), 0) 
        If IsNumeric(varRow) Then 
            Range("T2").Value = .Columns(1).Cells(varRow, 1).Value 
        Else 
            Range("T2").Value = Empty 
        End If 
    End With 
Application.EnableEvents = True 
End Sub 
 
Gruß Tino

Anzeige
AW: Eingabe ersetzen/austauschen
22.12.2012 16:35:09
Burghard
Hallo Tino,
das klappt in Zelle T2 wie gewünscht. Kannst Du das Makro noch so umschreiben, dass es in den Zellen T3 ... bis T17 auch so funktioniert?
Schönen Gruß
Burghard

AW: Eingabe ersetzen/austauschen
22.12.2012 16:52:02
Tino
Hallo,
auch kein Problem, müsste so gehen.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim varRow, rngBereich As Range
Set rngBereich = Intersect(Range("T2:T17"), Target)
If rngBereich Is Nothing Then Exit Sub
Application.EnableEvents = False
    With Range("X2:Y17")
        For Each rngBereich In rngBereich.Cells
            varRow = Application.Match(rngBereich.Value, .Columns(2), 0)
            If IsNumeric(varRow) Then
                rngBereich.Value = .Columns(1).Cells(varRow, 1).Value
            Else
                rngBereich.Value = Empty
            End If
        Next rngBereich
    End With
Application.EnableEvents = True
End Sub
Gruß Tino

Anzeige
AW: Klapp prima!
22.12.2012 17:19:13
Burghard
Hallo Tino,
klappt astrein! Danke!
Grüße
Burghard

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige