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

Auf Änderung im benannten Bereich reagieren

Auf Änderung im benannten Bereich reagieren
17.01.2005 21:02:13
Markus
Hallo Excel-Freunde,
ich habe einen Bereich von "C5:G8" in einen benannten Bereich "A" benannt. Weiterhin ist ein Bereich von "C9:G12" in den Bereich "B" benannt usw.
Nun möchte ich mit dem Worksheet_Change Ereigniss auf eine Veränderung reagieren können, und den Benannten Bereich als String in eine Variable übergeben.
Beispiel:
wenn im Bereich "B" eine Eingabe erfolgt, soll die Variable "BenannterBereich" den String "B" übermittelt bekommen.
Bin euch für Lösungsvorschläge sehr dankbar !
Grüße, Markus

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Auf Änderung im benannten Bereich reagieren
Boris
Hi Markus,
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim BenannterBereich As String
If Not Intersect(Target, Range("A")) Is Nothing Then
BenannterBereich = "A"
ElseIf Not Intersect(Target, Range("B")) Is Nothing Then
BenannterBereich = "B"
End If
If BenannterBereich <> "" Then MsgBox BenannterBereich
End Sub

Grüße Boris
AW: Auf Änderung im benannten Bereich reagieren
17.01.2005 22:17:17
Markus
Hallo Boris,
Schon mal schönen Dank für deine Antwort! Bereich A und B werden erkannt.
Jedoch komme ich mit der ElseIf Not Abfrage nicht ganz klar.
Wie muss ich das Makro weiterführen, wenn ich die Bereiche C, D, E .........
mit abfragen möchte ?
Gruß, Markus
Anzeige
AW: Auf Änderung im benannten Bereich reagieren
Boris
Hi Markus,
dann mach es in der Art:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim BenannterBereich As String
Dim N As Name
On Error Resume Next
For Each N In ThisWorkbook.Names
If Not Intersect(Target, Range(N)) Is Nothing Then
BenannterBereich = N.Name
Exit Sub
End If
Next N
End Sub

Grüße Boris
AW: Auf Änderung im benannten Bereich reagieren
17.01.2005 23:11:45
Markus
Hi Boris,
leider bringt das Makro jetzt alles durcheinander.
Jetzt wird nur noch der der Bereich A erkannt. Wenn im Bereich B und C was geändert wird, zeigt das Makro an, das sich Bereich A geändert haben soll....
Grüße, Markus
Anzeige
AW: Beispieldatei...
17.01.2005 23:42:01
Markus
Hi Boris,
Jap es funktioniert ! :-)
Das Makro macht genau das, wonach ich gesucht habe. War ne schwere Geburt aber immerhin.
Vielen herzlichen Dank für die Unterstützung ! Dann kann es ja jetzt weitergehen.
Schöne Grüße, Markus
AW: Auf Änderung im benannten Bereich reagieren
Reinhard
Hi Markus,

Dim Bereich As String
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Bez
Bereich = ""
For Each Bez In ThisWorkbook.Names
If Not Application.Intersect(Target, Range(Bez.RefersTo)) Is Nothing Then Bereich = Bez.Name
Next Bez
'MsgBox Bereich
End Sub

Gruß
Reinhard
Anzeige
AW: Auf Änderung im benannten Bereich reagieren
17.01.2005 23:05:51
Markus
Hi Reinhard,
sorry, aber das Makro gibt bei mir den Laufzeitfehler 1004 aus.
"Die Methode 'Range' ist für das Objekt'_Worksheet' fehlgeschlagen.
Grüße, Markus
AW: Auf Änderung im benannten Bereich reagieren
Boris
Hi Markus,
...da fehlt auch noch die Fehlerbehandlung - denn nicht jeder Name bezieht sich auf einen Zellbereich. Daher hatte ich in meinem Beispiel (hast du das auch getestet?) mal eben die Holzhammer-Methode angewandt - On Error Resume Next.
Grüße Boris
AW: Auf Änderung im benannten Bereich reagieren
17.01.2005 23:26:34
Markus
Hallo Boris,
Nein, On Error Resume Next hab ich nicht getestet, aber nachträglich eingefügt.
Jetzt Erkennt das Makro Nur wenn sich Bereich C ändert. Wenn sich Bereich A, oder B ändert, oder eine XBeliebige andere Celle gibt er einen Bereich an der sich auf einem Anderem Worksheet befindet.
Mir ist mittlerweile völlig unklar was hier vor sich geht.....
Gruß,Markus
Anzeige
Schau dir meine Beispieldatei an...oT
Boris

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige