Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
748to752
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
748to752
748to752
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Daten automatisch ändern - Worksheet_Change

Daten automatisch ändern - Worksheet_Change
26.03.2006 13:26:14
Pia
Hi!
Ich habe in Tabelle1 in einer Spalte verschiedene Werte stehen (Text), in Tabelle2 kommen diese auch wieder vor, dort aber mehrmals.
Nun möchte ich, wenn ich in Tabelle1 ein Wort änder, dieses auch in Tabelle2 gesucht und entsprechend geändert wird.
Wenn ich das Worksheet_Change Ereignis benutze, das Wort änder, dann sucht er ja nach dem neuen Wort, nicht nach dem Alten!
Hat jemand von Euch eine Idee?

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten automatisch ändern - Worksheet_Change
26.03.2006 13:45:13
Pia
Hi!
Ich habe es jetzt mal so getestet:
Public wert_alt As String
Public wert_neu As String

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
wert_alt = Selection
End Sub

Nun dachte ich, ich könnte den neuen Wert mit

Private Sub Worksheet_Change(ByVal Target As Range)
wert_neu = Selection
End Sub

übernehmen, doch hier wird ja immer die aktuelle Auswahl ausgegeben!
Wie komme ich an den neuen Wert?
AW: Daten automatisch ändern - Worksheet_Change
26.03.2006 13:49:31
Reinhard
Hi Pia,
Option Explicit
Public wert_alt As String
Public wert_neu As String
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
wert_alt = Target.Value
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
wert_neu = Target.Value
End Sub

Gruß
Reinhard
ps: Ich freue mich über eine Rückmeldung ob diese Antwort hilfreich war oder nicht..
Anzeige
AW: Daten automatisch ändern - Worksheet_Change
26.03.2006 14:14:44
Pia
Hi Reinhard!
Hier meine Versuche:

Private Sub Worksheet_Change(ByVal Target As Range)
Set quelle = Sheets("Daten")
Set ziel = Sheets("Tabelle1")
wert_neu = Target.Value
'MsgBox wert_alt
'MsgBox wert_neu
If wert_alt <> "" And wert_neu <> "" And wert_alt <> wert_neu Then
anzahl = 0
For i = 1 To ziel.Cells(ziel.Rows.Count, 1).End(xlUp).Row
i = i + 1
If ziel.Cells(i, 1) = wert_alt Then
'MsgBox "gefunden"
anzahl = anzahl + 1
ziel.Cells(i, 1) = wert_neu
End If
Next
If anzahl > 0 Then
MsgBox "Es wurde(n) " & anzahl & " Datensätze auf den Wert " & wert_neu & " geändert.", 64 + 0, "Information"
End If
End If
End Sub


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
' Mehrfachauswahl verhindern
If Target.Count > 1 Then
MsgBox "Es ist keine Mehrfachauswahl von Zellen möglich!", 16 + 0, "Hinweis"
Range("A1").Select
Else
wert_alt = Target.Value
End If
End Sub

Das klappt auch - meistens jedenfalls!
Es werden nicht immer alle Daten erkannt und ersetzt! Obwohl sie gleich sind!
Wo kann der Fehler leigen?
Danke!
Anzeige
AW: Daten automatisch ändern - Worksheet_Change
26.03.2006 14:26:39
Pia
Fehler gefunden:
i=i+1
Bin ich blöd!
AW: Daten automatisch ändern - Worksheet_Change
26.03.2006 14:29:05
Reinhard
Hi Pia,
ungetestet:
Private Sub Worksheet_Change(ByVal Target As Range)
wert_neu = Target.Value
If wert_alt = "" Or wert_neu = "" Or wert_alt <> wert_neu Then Exit Sub
With Worksheets("Tabelle1")
For i = 1 To .Cells(.Rows.Count, 1).End(xlUp).Row
If .Cells(i, 1) = wert_alt Then
anzahl = anzahl + 1
.Cells(i, 1) = wert_neu
End If
Next i
If anzahl > 0 Then MsgBox "Es wurde(n) " & anzahl & " Datensätze auf den Wert " & wert_neu & " geändert.", 64 + 0, "Information"
End With
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
' Mehrfachauswahl verhindern
If Target.Cells.Count > 1 Then
MsgBox "Es ist keine Mehrfachauswahl von Zellen möglich!", 16 + 0, "Hinweis"
Range("A1").Select
Else
wert_alt = Target.Value
End If
End Sub

Gruß
Reinhard
ps: Ich freue mich über eine Rückmeldung ob diese Antwort hilfreich war oder nicht..
Anzeige
AW: Daten automatisch ändern - Worksheet_Change
26.03.2006 13:47:06
Reinhard
Hi Pia,
kompliziert wird es wenn du ganze Zellenbereiche löschst/änderst.
Für Einzelzellen, deklariere eine globale Variable "alt". Beim Ereignis SelectionChange in "alt" den Zellenwert einlesen, dann im Ereignis Change nach "alt" in Blatt2 suchen usw.
Gruß
Reinhard
ps: Ich freue mich über eine Rückmeldung ob diese Antwort hilfreich war oder nicht..
AW: Daten automatisch ändern - Worksheet_Change
26.03.2006 13:48:41
Pia
Hi!
Genau das habe ich gemacht! ;-)
Aber woher bekomme ich den neuen Wert?

30 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige