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

Ersetzenliste

Ersetzenliste
18.03.2014 08:27:06
Stefan
Hallo zusammen,
ich habe nur ein kleines Problem. Ich habe ein Makro, das in einem anderen Excelfile Begriffe ersetzt. Dazu öffne ich ein Workbook in dem mein Makro hinterlegt ist, lasse es im Hintergrund geöffnet und lasse mir dann den Code auf einem externen Monitor anzeigen. Dann öffne ich die Datei, in der die Begriffe ersetzt werden sollen. Bisher habe ich im Makro eine externe Datei auf dem Laufwerk geladen, in dem die "Übersetzungen" (zu suchende Begriffe in Spalte A, die ersetzenden Begriffe in Spalte B)lade.
Ich möchte nun jedoch nicht auf eine externe Datei mit bestimmtem Dateipfad verweisen (da diese ja irgendwann mal verschoben werden könnte), sondern am besten die "Übersetzungen" direkt in ein Arbeitsblatt "Ersetzenliste" im Workbook mit dem Makro hinterlegen. Allerdings ist dieses Workbook ja im Hintergrund, während die Datei geöffnet ist, in dem die Begriffe ersetzt werden sollen.
Mir fehlt nur der passende Verweis, mit dem ich dem Makro sage, dass es im eigenen Workbook nach dem Blatt "Ersetzenliste" suchen soll. Natürlich könnte ich de Pfad so anpassen, dass auf das File zugegriffen wird. Allerdings möchte ich eine mögliche Fehlerquelle abstellen, falls die Datei irgendwann mal in ein anderes Verzeichnis verschoben wird. Ich habe die meiner Meinung nch nicht mehr notwendigen Zeilen auskommentiert. Nur die fette Zeile müsste jezt angepasst werden, sodass vor dem Sheets("Ersetzenliste") irgendwie sowas wie guckmalinseigeneWorkbook.Sheets("Ersetzenliste").
Vielen Dank für eure Hilfe! Viele Grüße!
Hier mal mein bisheriger Code:

Sub Ersetzenliste()
' ersetzt alle im Tabellenblatt "Ersetzenliste" hinterlegten Begriffe: in Spalte A sind die zu   _
_
ersetzenden Begriffe, in Spalte B die neuen Begriffe
'Dim objExcel As New Excel.Application
'Dim objBook As Excel.Workbook
Dim objSheet As Excel.Worksheet
Dim i As Long
'Set objExcel = New Excel.Application
'Set objBook = objExcel.Workbooks.Open("C:\...\...\...\Ersetzenliste.xlsx") 'Dateipfad zur   _
_
Ersetzenliste.xlsx, gegebenenfalls anpassen!
Set objSheet = Sheets("Ersetzenliste") 'Wählen des richtigen Arbeitsblattes,  _
gegebenenfalls anpassen!
With objSheet 'führt Ersetzung bis zur letzten gefüllten Zelle in Spalte A=1 durch, schaut   _
_
welche Begriffe ersetzt werden sollen (Spalte 1=A), ersetzt mit Begriffen aus Spalte 2=b)
For i = 1 To .Cells(Cells.Rows.Count, 1).End(xlUp).Row
Cells.Replace What:=.Cells(i, 1), Replacement:=.Cells(i, 2), _
LookAt:=xlWhole, SearchOrder:=xlByRows, MatchCase:=False, _
SearchFormat:=False, ReplaceFormat:=False
Next
End With
objBook.Close
Set objSheet = Nothing
Set objBook = Nothing
Set objExcel = Nothing
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ersetzenliste
18.03.2014 09:25:35
Sheldon
Hallo Stefan,
so:
Set objSheet = ThisWorkbook.Sheets("Ersetzenliste")

Gruß
Sheldon

AW: Ersetzenliste
18.03.2014 10:24:55
Stefan
Super - Danke! Wusst ichs doch, dass es nur ein kleiner Schritt war, aber ich kam nicht drauf.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige