Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1884to1888
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

If Formel

If Formel
20.05.2022 14:06:38
Kai
Hallo,
ich habe folgende Formel. Sie funktioniert auch super.
Ich möchte aber das es umgekehrt auch gemacht wird.
Soll heißen, dass wenn in D20 ein x geschrieben wird soll auch ein x un J28 geschrieben werden und
wenn in j28 ein x geschrieben wird soll auch in D20 ein geschrieben werden.
Excel bricht aber danach die Zusammenarbeitab. Ich nehme an, dass es sich tot läuft ;-)
Hier was ich gemacht habe (in eine Richtung).
Was muss ich erweitern/ändern?

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("d20")) Is Nothing Then
If Target = "x" Or Target = "X" Then
Range("j28") = "x"
Else
Range("j28") = ""
End If
End If
End sub
Danke

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: If Formel
20.05.2022 14:17:04
{Boris}
Hi,
Deine "Formel" ist ein Ereigniscode mit einer If-Then-Else-Abfrage - so viel erst mal zur Begrifflichkeit.
Das von Dir verwendete Change-Ereignis reagiert auf jede Zellveränderung und ruft sich - sofern im Code selbst eine Veränderung vorgenommen wird - immer wieder auf. Setz mal zu Beginn einen Haltepunkt - dann kannst Du es besser nachvollziehen.
Um den erneuten Aufruf zu unterbinden, setzt man die EnableEvents-Eigenschaft temporär auf False und schaltet sie am Ende wieder an.
Dabei sollte man auch unbedingt Fehler berücksichtigen / korrekt abfangen.
Sag doch mal, was Du genau mit dem Code vorhast - am besten mit einer kleinen Beispielmappe.
VG, Boris
Anzeige
AW: If Formel
20.05.2022 15:30:31
Kai
Hi,
danke für Deine Antwort. Ist einiges was ich nicht verstehe ;-)
Im Anhang eine Musterdatei.
Wenn ich in dieser Datei bei dem Feld " Feldatal" (D20) ein "x" platziere, soll ebenso ein "x" im Feld "Romrod" (J28) erscheinen.
Das klappt auch soweit. Wenn ich jetzt aber ein "x" in das Feld "Feldatal" (J28) mache, soll auch ein "x" im Feld "Romrod" (D20) erscheinen.
Je nach dem mit welchem Feld man beginnt. Wenn nur ich diese Datei verwenden würde wäre es kein Problem aber dem ist nicht so.
Die Liste ist eine Datei mit den Auflagenzahlen einer Zeitung und mann kann wählen, welche Gemeinde man verteilen möchte. Manche Gemeinden gehen aber nur zusammen, wie z.B. Feldatal und Romrod. Sind noch ein paar mehr aber wenn ich erst den Ansatz habe kann ich es für die Anderen ja anwenden.
Ich hoffe das habe ich irgendwie verständlich formuliert.
Hier der Link
https://www.herber.de/bbs/user/153181.xlsm
Danke.
Anzeige
Hier mal ein Beispiel
20.05.2022 14:25:42
{Boris}
Hi,
...bewusst etwas ausführlicher geschrieben - für die wechselseitige Beziehung zwischen D20 und J28:

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo ERR_EXIT
Application.EnableEvents = False
With Target
Select Case .Address(0, 0)
Case "D20":
If UCase(.Value) = "X" Then
Range("J28") = "X"
Else
Range("J28").ClearContents
End If
Case "J28":
If UCase(.Value) = "X" Then
Range("D20") = "X"
Else
Range("D20").ClearContents
End If
End Select
End With
ERR_EXIT:
Application.EnableEvents = True
End Sub
VG, Boris
AW: Hier mal ein Beispiel
20.05.2022 15:36:31
Kai
Ach ja, bei deiner Formel passiert nichts.
Anzeige
Das ist KEINE Formel...
20.05.2022 16:05:43
{Boris}
Hi,
...sondern ein Ereigniscode - das hatten wir doch schon ;-)
Und wenn ich diesen Ereigniscode in Deine Datei kopiere, dann funktioniert der genau so, wie Du es eingangs wolltest.
Für mehr reicht es bei mir nun nicht, da das hier voraussichtlich auf eine Schulung zu Ereignisprogrammierung hinausläuft.
Ich stell auf offen.
VG, Boris
AW: If Formel
20.05.2022 18:26:31
onur
Was erzählst du da eigentlich ?
"Wenn ich jetzt aber ein "x" in das Feld "Feldatal" (J28) mache, soll auch ein "x" im Feld "Romrod" (D20) erscheinen" ?
In der "Beispielsdatei ist weder "Romrod" in Zelle D20 noch "Feldatal" in J28.
Anzeige
AW: If Formel
20.05.2022 21:06:52
Kai
Naja, rechts neben den Ortsnamen sind 3 Felder, eins mit einer Zahl, in das 2. soll das "x" dann wird in das 3. Feld die Zahl übernommen.
So soll es auch sein und wenn in dem 2. das "x" steht, erscheint auch in dem 2. Feld rechts neb en dem Feld Romrod das "x".
hier nochmal die ausgefüllte Datei.
https://www.herber.de/bbs/user/153187.xlsm
Was genau fehlt Dir noch?
21.05.2022 10:59:45
{Boris}
Hi,
...denn

aber wenn ich erst den Ansatz habe kann ich es für die Anderen ja anwenden
Offensichtlich nicht, denn den Ansatz für die wechselseitige Beziehung hast Du bereits erhalten - das ist dieser Codeteil für die Wechselbeziehung zwischen D20 und J28:

With Target
Select Case .Address(0, 0)
Case "D20":
If UCase(.Value) = "X" Then
Range("J28") = "X"
Else
Range("J28").ClearContents
End If
Case "J28":
If UCase(.Value) = "X" Then
Range("D20") = "X"
Else
Range("D20").ClearContents
End If
End Select
End With
Da aus Deiner Datei nicht ersichtlich ist, welche Wechselbeziehungen es genau gibt, kann man es nicht konkreter schreiben.
Du musst dann nur für alle weiteren Beziehungen weitere Fälle (Case) einfügen.
VG; Boris
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige