VAT()

08/03/2009 - 00:45 von Sungmook Kim | Report spam
Hallo!
ich als VBA Anfànger gehe gerade das Buch "Excel Programmierung Handbuch"
von Microsoft Press durch und stoße bei dem folgenden Beispiel an einem
Problem.

Der Code sieht so aus:

Sub VAT()
'Mehrwertsteuersatz von Deutschland hinterlegen
Const sngVAT As Single = 0.19
'Pfad und Dateinamen hinterlegen
Const strPath As String = "E:\VAT.xls"


Dim dblValue As Double

Workbooks.Add
dblValue = 500

With Worksheets("Tabelle1")
.Range("A1") = dblValue

dblValue = dblValue + (dblValue * sngVAT)

.Range("A2") = sngVAT
.Range("A3") = dblValue
End With

ThisWorkbook.SaveAs strPath

End Sub


ENDE CODE

Diesen Code habe ich vom Buch übernommen.
Irgendwie werden die Werte aber nicht in die Datei VAT.xls geschrieben
sondern in eine neue Datei und VAT.xls wird zwar gespeichert, aber ohne
Werte.

Kann mir da jemand helfen bitte?

Danke!

Kim
 

Lesen sie die antworten

#1 Andreas Killer
08/03/2009 - 08:41 | Warnen spam
Sungmook Kim schrieb:

ich als VBA Anfànger gehe gerade das Buch "Excel Programmierung Handbuch"
von Microsoft Press durch und stoße bei dem folgenden Beispiel an einem
Problem.


...
Diesen Code habe ich vom Buch übernommen.
Irgendwie werden die Werte aber nicht in die Datei VAT.xls geschrieben
sondern in eine neue Datei und VAT.xls wird zwar gespeichert, aber ohne
Werte.


Es muss "ActiveWorkbook.SaveAs strPath" heißen und zwar aus folgendem
Grund:

In dem Moment wo Du den Code startest sind ActiveWorkbook und
ThisWorkbook noch gleich, dann aber folgt ein Workbooks.Add und damit
bezeichnet ActiveWorkbook die neue Mappe weil das .Add diesen Wechsel
vollführt.

D.h. ThisWorkbook.Save speichert die Mappe in der der Code làuft.

Nun ja, ich kann nicht wiederstehen zu sagen das der Code ziemlich
dumm ist, weil wenn er denn funktionieren würde, würde er das auch nur
einmal.

Ab dem 2ten Lauf gibt es einen Fehler 1004: "Kann die Datei nicht
unter einem Namen einer bereits geöffneten Datei speichern."

Schmeiß das Buch in den Müll, das taugt nichts.

Andreas.

Ähnliche fragen