VBA funktioniert nach SP3 nicht mehr

06/10/2010 - 15:44 von Günter Laschner | Report spam
Hallo,

war heute morgen an einem Rechner (Win-XP) dem ich letzte Woche das SP3
und die dazugehörigen (37?) Updates eingespielt hatte. Nun funktioniert
aber das VBA-Script nicht mehr, welches in jeder neuen Rechnung die
Re-Nr. um eine Stelle erhöht. Die Rechnungen werden immer noch unter
Excel 97 geschrieben. Anbei das Script.
Ich sollte noch sagen, dass ich mit VBA wenig am Hute habe

Sub Rechnungsnummer()
'
' Rechnungsnummer Makro

Dim i As Integer, Datum, Zeichen
Dim RNr
Datum = Format(Date, "YYYYMM")

Open "d:\Excelautoummer.txt" For Input As #1 ' Datei öffnen.
'i = 0
Do While Not EOF(1) ' Schleife bis Dateiende.
i = i + 1
Line Input #1, RNr
'Zeichen = Input(i, #1) ' Ein Zeichen lesen.
'RNr = RNr & Zeichen
Loop
Close #1

ActiveCell.FormulaR1C1 = "Rechnungsnummer: " & Datum & "/" &
Format(RNr, "0000")
'Selection.Font.Bold = True

RNr = RNr + 1

Open "d:\Excelautoummer.txt" For Output As #1 ' Datei öffnen.
Print #1, RNr
Close #1

End Sub

Vielen Dank, Günter
 

Lesen sie die antworten

#1 Andreas Killer
06/10/2010 - 16:16 | Warnen spam
Am 06.10.2010 15:44, schrieb Günter Laschner:

Die Rechnungen werden immer noch unter Excel 97 geschrieben. Anbei das Script.
Ich sollte noch sagen, dass ich mit VBA wenig am Hute habe


Nun ja, im Prinzip sollte es funktionieren, fragt sich warum es nicht geht.

Probier mal dies Makro. Kommen die MsgBoxen mit den Meldungen?

Falls nein, dann sind die Makro's aus.
Falls ja, was genau geht nicht? Irgendwelche Fehlermeldungen?

Andreas.

Sub Rechnungsnummer()
' Rechnungsnummer Makro
Const Datei = "d:\Excelautoummer.txt"
Dim RNr

On Error GoTo 0
MsgBox "Öffne " & Datei

Open Datei For Input As #1
Line Input #1, RNr
Close #1

MsgBox "RNr ist " & RNr

ActiveCell = "Rechnungsnummer: " & _
Format(Date, "YYYYMM") & "/" & Format(RNr, "0000")

MsgBox "Schreibe " & Datei

Open Datei For Output As #1
Print #1, RNr + 1
Close #1
End Sub

Ähnliche fragen