da ich kaum Erfahrung im Bereich VBA habe hätte ich gerne mal folgendes Problem :)
Ich habe folgenden Code der Variablen in einer Textdatei ersetzt, eine neue Datei speichert und die File anschleißend mittels Batchrutine an einen Drucker schickt.
Hier der bisherige Code:
Sub Schaltfläche3_BeiKlick()
Dim arr() As String
Dim iCounter As Integer
Dim sSource As String, sTarget As String
Dim sPath As String
Dim arrText, i As Integer
sPath = ThisWorkbook.Path & "\"
sSource = sPath & Range("B3").Value
sTarget = sPath & Range("B4").Value
arrText = Range("A8:B22")
Open sSource For Input As #1
Do Until EOF(1)
Line Input #1, sTxt
For i = LBound(arrText) To UBound(arrText)
sTxt = Replace(sTxt, arrText(i, 1), arrText(i, 2))
Next i
iCounter = iCounter + 1
ReDim Preserve arr(1 To iCounter)
arr(iCounter) = sTxt
Loop
Close 1
Open sTarget For Output As #1
For iCounter = 1 To UBound(arr)
Print #1, arr(iCounter)
Next iCounter
Close 1
TaskID = Shell("c:\batch.bat")
'On Error GoTo ERRORHANDLER
'Shell "notepad " & sTarget, vbMaximizedFocus
Exit Sub
End Sub
Nun soll aber in die Druckfile nicht nur Text sondern auch eine Grafik. Die Grafiken unterscheiden sich, je nach dem welcher Wert in Zelle B11 steht. Als Beispiel: Inhalt in Zelle B11 = abc Nun würde ich in das Verzeichnis C:\Profiles eine Textdatei mit dem Name "abc.txt" bereitstellen.
Der Inhalt dieser Datei soll die Variable "gggggggg" in der ursprünglichen Datei (siehe Code oben) suchen und durch den Inhalt der Textdatei abc.txt ersetzen.
Zu besseren Vorstellung:
Auszug aus der Template Datei:
// TEXT (1/100 mm)
AM[16]3000;8000;0;4;0;1;350;350;0
BM[16]hhhhhhhh
// TEXT (1/100 mm)
AM[17]3750;8000;0;4;0;1;350;350;0
BM[17]aaaaaaaa
// TEXT (1/100 mm)
AM[18]4500;8000;0;4;0;1;350;350;0
BM[18]pppppppp
gggggggg
Nach dem aufruf des Code oben sieht die nun so aus:
// TEXT (1/100 mm)
AM[16]3000;8000;0;4;0;1;350;350;0
BM[16]Nordisch
// TEXT (1/100 mm)
AM[17]3750;8000;0;4;0;1;350;350;0
BM[17]200 x 200 mm
// TEXT (1/100 mm)
AM[18]4500;8000;0;4;0;1;350;350;0
BM[18]abc
gggggggg
Jetzt soll aber für gggggggg der Inhalt aus der Datei abc.txt eingefügt werden damit das ganze dann so aussieht:
// TEXT (1/100 mm)
AM[16]3000;8000;0;4;0;1;350;350;0
BM[16]Nordisch
// TEXT (1/100 mm)
AM[17]3750;8000;0;4;0;1;350;350;0
BM[17]200 x 200 mm
// TEXT (1/100 mm)
AM[18]4500;8000;0;4;0;1;350;350;0
BM[18]abc
D0247152088 ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÀ ÿÿÿÿÿÿÿÿÿÿÿÿü ÿÿÿÿÿÿÿÿÿÿÿÿð ÿÿÿÿÿÿÿÿÿÿÿÿÿÿü
D0246152088 ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÀ ÿÿÿÿÿÿÿÿÿÿÿÿü ÿÿÿÿÿÿÿÿÿÿÿÿð ÿÿÿÿÿÿÿÿÿÿÿÿÿÿü
D0245152088 ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÀ ÿÿÿÿÿÿÿÿÿÿÿÿü ÿÿÿÿÿÿÿÿÿÿÿÿð ÿÿÿÿÿÿÿÿÿÿÿÿÿÿü
D0244152088 ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÀ ÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿü ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿü
D0243152088 ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÀ ÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿü ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿü
D0242152088 ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÀ ÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿü ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿü
D0241152088 ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÀ ÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿü ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿü
D0240152088 ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿð ÿÿÿÿÿÿÿÿÿÿÿÿÿÀ ÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿü
D0239152088 ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿð ÿÿÿÿÿÿÿÿÿÿÿÿÿÀ ÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿü
D0238152088 ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿð ÿÿÿÿÿÿÿÿÿÿÿÿÿÀ ÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿü
Hoffe hier kann mir jemand helfen, hab null plan wie ich das oben in den Code rein krieg.
Danke schon mal
Gruß Stevie