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

VBA Skript - Update Problem

VBA Skript - Update Problem
11.10.2003 22:27:13
Daniel
Hallo Zusammen

OliveR hat mir folgendes Skript für mein Problem gegeben:


Private Sub Worksheet_Change(ByVal Target As Range)
Dim i%
If Intersect(Target, Range("F13")) Is Nothing Then Exit Sub
If Target.Value = "Automatisch" Then
For i = 13 To 24 Step 1
Cells(i, 24) = Cells(i, 19)
Next i
ElseIf Target.Value = "Manuell" Then
Range("X13:AA24").ClearContents
MsgBox ("Bitte geben Sie die Sendungen pro Monat manuell ein")
ElseIf Target.Value <> "" Then
MsgBox ("Automatisch oder Manuell wählen")
Range("F13").ClearContents
Range("F13").Select
End If
End Sub


Sie funktioniert auch prächtig, allerdings wenn F13 auf Automatisch ist und ich die Zellen (13,19) - (24,19) ändere, werden die Zahlen in den Zellen (13,19) - (24,19) nicht automatisch geupdatet, nur dann wenn ich F13 wieder auf Automatisch stelle (ist ein Gültigkeit/Daten Dropdown).

Gibt es eine Lösung dafür das die Zellen bei einer Änderung der Quelle auch automatisch dementsprechend geändert werden. Vielen Dank im voraus

Daniel.

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Skript - Update Problem
12.10.2003 03:59:49
Reinhard
Hi Daniel,
die If-formel If Intersect(Target, Range("F13")) Is Nothing Then Exit Sub
prüft nur Zelle F13, wenn du woanders was änderst greift das Makro nicht.
Also ändere bitte das ab in
If Intersect(Target, Range("F13")) Is Nothing or _
Intersect(Target, Range(cells(13,19),cells(24,19)) Is Nothing Then Exit Sub
Gruß
Reinhard
Noch Offen - VBA Skript - Update Problem
12.10.2003 20:43:16
Daniel
Hallo Reinhard

Vielen Dank

Ich habe es probiert und
If Intersect(Target, Range("F13")) Is Nothing or _
Intersect(Target, Range(cells(13,19),cells(24,19))) Is Nothing Then Exit Sub eingeben.

Allerdings funktioniert das ganze Makro danach nicht mehr.

Ich vermutte es hat was "If Target.Value = "Automatisch"" zu tun, da ja nicht mehr nur ein Target da ist, ich habe aber keine Ahnung wie ich das Problem lösen soll, vielleicht ist es auch etwas ganz anderes.

Danke für deine Hilfe!!!

Daniel
Anzeige
Fehler bei mir
12.10.2003 23:35:57
Reinhard
Hi daniel,
so müßte es klappen, habs nicht getestet.
Gruß
Reinhard


Private Sub Worksheet_Change(ByVal Target As Range)
Dim i%
If Intersect(Target, Range("F13")) Is Nothing or _
Intersect(Target, Range(cells(13,19),cells(24,19))) Is Nothing Then Exit Sub
If Range("F13").Value = "Automatisch" Then
For i = 13 To 24 Step 1
Cells(i, 24) = Cells(i, 19)
Next i
ElseIf Range("F13").Value = "Manuell" Then
Range("X13:AA24").ClearContents
MsgBox ("Bitte geben Sie die Sendungen pro Monat manuell ein")
ElseIf Range("F13").Value <> "" Then
MsgBox ("Automatisch oder Manuell wählen")
Range("F13").ClearContents
Range("F13").Select
End If
End Sub

Anzeige
AW: Fehler bei mir
12.10.2003 23:46:14
Daniel
Hallo Reinhard

Leider funktioniert es immer noch nicht, könnte ich was falsch gemacht haben???

Bei einem Wechsel von automatisch auf manuell geht gar nichts.

Vielen vielen dank

Daniel.
jetzt aber :-)
13.10.2003 19:29:08
Reinhard
Hallo Daniel,
ich hatte or anstatt and genommen.
Gruß
Reinhard


Private Sub Worksheet_Change(ByVal Target As Range)
'If Merker = True Then Exit Sub
If Intersect(Target, Range("F13")) Is Nothing And _
Intersect(Target, Range(Cells(13, 19), Cells(24, 19))) Is Nothing Then Exit Sub
'Merker=True
If Range("F13").Value = "Automatisch" Then
Merker = True
Range(Cells(13, 19), Cells(24, 19)).Copy _
Destination:=Range(Cells(13, 24), Cells(24, 24))
ElseIf Range("F13").Value = "Manuell" Then
Range("X13").Select
MsgBox ("Bitte geben Sie die Sendungen pro Monat manuell ein")
Range("X13:AA24").ClearContents
ElseIf Range("F13").Value <> "" Then
Range("F13").Select
MsgBox ("Automatisch oder Manuell wählen")
Range("F13").ClearContents
End If
'Merker = False
End Sub

Anzeige
Vielen Dank!
15.10.2003 13:27:41
Daniel
Hi Reinhard

PERFEKT!!!

Vielen vielen Dank!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige