Wie kann ich ein VBA-makro ausführen, ein Suchen/Ersetzen in Formeln auf einen gesamte Arbeitsmappe?
Verteile ich eine Excel-Arbeitsmappe, die eine Anzahl von Benutzern, und Sie sind soll eine makro-Datei pre-installiert in Ihrem XLSTART-Ordner.
Wenn Sie nicht über das makro korrekt installiert, und senden Sie die Arbeitsmappe zurück zu mir, alle Formeln je nach den vollständigen Pfad des Makros, z.B.:
'C:\Documents and Settings\richard.tallent\Application Data\
Microsoft\Excel\XLSTART\pcs.xls'!MyMacroFunction()
Erstellen Sie ein quick makro kann ich verwenden, um entfernen Sie die unzulässigen Weg von jede Formel in der Arbeitsmappe.
Habe ich erfolgreich abgerufen speziellen Ordner mit GetSpecialFolder (eine externe Funktion, die funktioniert ganz gut), aber die Ersetzen sich selbst aufrufen, die unten gezeigt ist, löst eine "Application-defined or object-defined error".
Public Sub FixBrokenMacroFormulas()
Dim badpath As String
badpath = "'" & GetSpecialFolder(AppDataFolder) & "\Microsoft\Excel\XLSTART\mymacro.xls'!"
Dim Sheet As Worksheet
For Each Sheet In ActiveWorkbook.Sheets
Call Sheet.Activate
Call Sheet.Select(True)
Call Selection.Replace(What:=badpath, Replacement:="", LookIn:=xlFormulas)
''//LookAt:=xlPart, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
Next
End Sub
Automatisierung suchen und ersetzen ist nicht gerade meine Stärke, was mache ich falsch?
Habe ich bereits auskommentiert einige der Parameter, die nicht wichtig erscheinen.
InformationsquelleAutor richardtallent | 2009-02-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie Folgendes:
Rief ich diese mit:
Dieser wurde gehackt von:
Makros Löschen-Formel Links
InformationsquelleAutor Bravax
Gibt es keine Notwendigkeit zum verwenden solch einer Funktion könnten Sie stattdessen verwenden Sie einfach die folgende Anweisung:
InformationsquelleAutor jpv