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

Formel ändern über VBA ?

Formel ändern über VBA ?
19.11.2004 07:18:02
Josef
Guten Morgen!
Ich habe in einer Exceldatei zwölf Blätter (Jänner - Dezember)
Im Jänner Sheet in Zeile
D3 steht folgendes ='H:\Arbeit\[Schalter 33 04.xls]Jänner'!$Q$18
D4 steht folgendes ='H:\Arbeit\[Schalter 33 04.xls]Jänner'!$Q$19
usw.
Im Februar Sheet in Zeile
D3 steht folgendes ='H:\Arbeit\[Schalter 33 04.xls]Jänner'!$Q$18
D4 steht folgendes ='H:\Arbeit\[Schalter 33 04.xls]Jänner'!$Q$19
usw.
Würde mittels VBA die Möglichkeit bestehen, wenn z.B. in A1 der Wert 05 eingegeben wird, dass alle Werte 04.xls auf 05.xls ausgebssert werden, und das in allen Seiten?
Danke
Josef

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel ändern über VBA ?
Udo
Das kannst du mit dem Makrorekorder aufzeichnen suchen nach 04.xls ersetzen durch
05.xls suchen in Formeln.
Udo
AW: Formel ändern über VBA ?
19.11.2004 07:27:45
Josef
Hallo Udo!
Danke für Deine Antwort.
Die Idee mit dem Makroauzeichnen hätte ich schon gehabt.
Ich hätte eine andere Lösung gesucht.
Ich gebe den Wert 05 in A1 ein und in den Seiten werden die Werte 04 auf 05 geändert.
Oder ich gebe den Wert 05 in A1 ein, ein Makro wird gestartet und die Werte werden geändert. Ich weiss aber nicht ob dies möglich wäre.
Josef
AW: Formel ändern über VBA ?
19.11.2004 07:41:19
Josef
Hallo!
Mit Makro aufgezeichnet.
Sub Makro1()
ActiveWindow.ScrollWorkbookTabs Position:=xlLast
Sheets(Array("Jänner", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", _
"September", "Oktober", "November", "Dezember")).Select
Sheets("Jänner").Activate
Cells.Select
Selection.Replace What:="04.xls", Replacement:="05.xls", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
End Sub
Mit dem Makro

Private Sub Worksheet_Change(ByVal Target As Range)
If [Eingabezelle] = Target.Address Then
Call Makro1
End If
End Sub

könnte ich wenn ich richjtig liege, dass obige Makro starten.
nur was müßte ich tun damit ich die Werte im Ersetzen Fenster selber eingeben kann?
Also: Makro wird gestartet, Ersetzen Fenster wird geöffnet, gebe den alten Wert in der erste Zeile und den neuen wert in die zweite Zeile ein.
Josef
Anzeige
AW: Formel ändern über VBA ?
19.11.2004 07:58:22
Josef
Hallo!
Was würde hier noch fehlen?

Sub Makro1()
Dim Wert
Dim Wert1
Wert1 = Range("KG und TZB!B1").Value
Wert2 = Range("KG und TZB!C1").Value
ActiveWindow.ScrollWorkbookTabs Position:=xlLast
Sheets(Array("Jänner", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", _
"September", "Oktober", "November", "Dezember")).Select
Sheets("Jänner").Activate
Cells.Select
Selection.Replace What:=Wert1, Replacement:=Wert2, LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Sheets("KG und TZB").Activate
Sheets("Jänner").Activate
End Sub

Folgende Fehlermeldung:
die Methode Range für das Objekt global ist fehlgeschlagen.
josef
Anzeige
LÖSUNG
19.11.2004 09:25:55
Josef
Hallo!
Folgende Lösung:

Sub Ersetzen()
Sheets(Array("Jänner", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", _
"September", "Oktober", "November", "Dezember")).Select
Range("D4:K6,D9:K13,D16:K21").Select
Selection.Replace What:=Worksheets("Daten").Cells(1, 20), Replacement:=Worksheets("Daten").Cells(1, 17), LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Selection.Replace What:=Worksheets("Daten").Cells(2, 20), Replacement:=Worksheets("Daten").Cells(2, 17), LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Selection.Replace What:=Worksheets("Daten").Cells(3, 20), Replacement:=Worksheets("Daten").Cells(3, 17), LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Selection.Replace What:=Worksheets("Daten").Cells(4, 20), Replacement:=Worksheets("Daten").Cells(4, 17), LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Selection.Replace What:=Worksheets("Daten").Cells(5, 20), Replacement:=Worksheets("Daten").Cells(5, 17), LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Selection.Replace What:=Worksheets("Daten").Cells(6, 20), Replacement:=Worksheets("Daten").Cells(6, 17), LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Selection.Replace What:=Worksheets("Daten").Cells(7, 20), Replacement:=Worksheets("Daten").Cells(7, 17), LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Selection.Replace What:=Worksheets("Daten").Cells(8, 20), Replacement:=Worksheets("Daten").Cells(8, 17), LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Sheets("KG und TZB").Activate
Sheets("Jänner").Activate
End Sub

Jetzt fehlt mir nur noch das Makro mit dem ich in einer Zeileneingabe ein Makro starte.
Josef
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige