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

Private Sub Worksheet_Change mit Range

Private Sub Worksheet_Change mit Range
14.05.2016 02:24:40
Peter
Hallo Zusammen,
ich bitte um Eure Hilfe.
Ich habe u.s. Makro:
In dem Worksheet habe ich eine variable Tabelle bei der die Zeilen variieren.
Beim ändern der Zellen in der Tabelle soll das Makro "Ergebnisse" gestartet werden.
Wie müsste der Befehl dazu aussehen?
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$7" Then
Call Anzahl_Adr
End If
For i = 19 To 50
If Cells(i, 2) = "" Then
Exit For
Else
Azellen = Azellen + 1
End If
Next i
If Target.Address = Range(Cells(19, 6), Cells(Azellen + 19, 6)) Then
Call Ergebnisse
End If

Für Eure Hilfe bedanke ich mich im voraus.
LG, Peter

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Private Sub Worksheet_Change mit Range
14.05.2016 05:45:34
Matthias
Hallo Peter
If Not Intersect(Target, Range(Cells(19, 6), Cells(Azellen + 19, 6))) Is Nothing Then
Call Ergebnisse
End If
Hinweis
Deine For i-Schleife wird allerdings immer ausgeführt, egal welche Zelle Du änderst.
Ist das gewollt? Wenn nicht, dann sollte die Schleife innerhalb eines IF-Konstruktes liegen.
Gruß Matthias

AW: Private Sub Worksheet_Change mit Range
17.05.2016 09:01:41
Peter
Hallo Matthias,
vielen Dank für deine Antwort.
Habe den Befehl eingefügt, aber wenn ich der Range einen Wert verändere wird das Makro "Call Ergebnisse" nicht ausgeführt. Habe ich etwas falsch gemacht?
Private Sub Worksheet_Change(ByVal Target As Range)
' Zellen anpassen
If Target.Address = "$C$7" Then
Call Anzahl_Adr
End If
If Azellen = 0 Then
For i = 19 To 50
If Cells(i, 2) = "" Then
Exit For
Else
Azellen = Azellen + 1
End If
Next i
Else
End If
If Not Intersect(Target, Range(Cells(19, 5), Cells(Azellen + 19, 5))) Is Nothing Then
Call Ergebnisse
End If
End Sub

Anzeige
AW: Private Sub Worksheet_Change mit Range
18.05.2016 20:18:35
Arthur
Hallo Peter.
Prinzipiell könnte der Code funktionieren. Es kommt nur darauf an, was er machen soll ...
Im Ursprung war die Spalte F (=6) beschrieben. Im Code ist daraus nun E (=5) geworden.
Davon abgesehen wird die Funktion dann aufgerufen, wenn in der Spalte E ein Feld geändert wird und zwar zwischen Zeile 19 und dort, wo in der Spalte B nichts drin steht (maximla bis Zeile 50). Da Azellen nicht initialisiert ist kann es sein, dass die Änderung genau in E19 sein muss.
[vlt. einfach eine Beispielatei hochladen]
Gruß, Arthur.

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige