| |

Suche Visual-Basic CodeSQL,VBA Laufzeitfehler!!!! | |  | Autor: Rudi | Datum: 22.03.02 18:48 |
| Hallo die Experten,
bin ziemlich neu in diesem Gebiet und Habe ein Problem. Habe schon viel versucht, es will aber einfach nicht klappen. Nun zu meinem Problem:
In der Datenbank habe ich eine Dok-Verwaltung drin, welche soweit funkt. Über einen 2. Button "AnWord" will ich nun das geöffnete Doc. aktualisieren und hier ist das Problem. Zum besseren Verständnis poste ich mal den Code und hoffe, dass mir jemand helfen kann.
Wäre für mich sehr wichtig.
Danke im voraus.
Gruß Rudi
Private Sub btnErstellen_Click()
Dim DBPfad As String
Dim Betreffzeile As String
Dim NeuesDokument As Word.Document
Dim NeueMappe As Excel.Workbook
' Prozedur beenden, wenn bereits ein Dokument vorhanden ist
If Not IsNull(Me!Dokument) Then
MsgBox "Sie können im aktuellen Datensatz kein neues Dokument erstellen, " & _
"weil bereits ein Dokument vorhanden ist!", vbCritical + vbOKOnly, "Dokument erstellen"
Exit Sub
End If
' Sicherstellen, daß eine Dokumentart ausgewählt wurde
If IsNull(Me!Dokumentart) Then
MsgBox "Bitte wählen Sie vorher die gewünschte Dokumentart aus!", _
vbInformation + vbOKOnly, "Dokument erstellen"
Exit Sub
End If
Me!Datum = Now
DBPfad = HolePfad(CodeDb.Name)
' Neues Objekt auf Basis der gewählten Dokumentart erstellen
Select Case Me!Dokumentart
Case 1 ' Brief
Betreffzeile = _
InputBox("Bitte geben Sie die Betreffzeile für den Brief ein:", _
"Neuen Brief schreiben")
If Betreffzeile = "" Then
Me.Undo
Exit Sub
End If
Me!Betreff = Betreffzeile
With Me!Dokument
.Class = "Word.Document.8" ' Den Klassennamen angeben
.OLETypeAllowed = acOLEEmbedded ' Den Typ des Objekts angeben
.SourceDoc = DBPfad & "BRIEFKOPF.DOT" ' Quelldatei im aktuellen Datenbankpfad
.Action = acOLECreateEmbed ' Das verknüpfte Objekt erstellen
.Verb = acOLEVerbOpen
.Action = acOLEActivate
End With
Set NeuesDokument = Me.Dokument.Object
With NeuesDokument
.Bookmarks("Firma").Range.Text = CStr(Forms!Dokumentverwaltung.Firma)
.Bookmarks("Strasse").Range.Text = CStr(Forms!Dokumentverwaltung.Strasse)
.Bookmarks("Ort").Range.Text = CStr(Forms!Dokumentverwaltung.PLZ) & " " & CStr(Forms!Dokumentverwaltung.Ort)
.Bookmarks("Land").Range.Text = CStr(Forms!Dokumentverwaltung.Land)
.Bookmarks("Betreff").Range.Text = Betreffzeile
End With
Set NeuesDokument = Nothing
Case 2 ' Lieferschein
LFSCHNr = InputBox("Bitte geben Sie die Nr für den Lieferschein ein:") & _
Datum = InputBox("Bitte geben Sie das Datum ein:", _
"Neuen Lieferschein schreiben")
If LFSCHNr = "" And Datum = "" Then
Me.Undo
End If
Me!LFSCHNr = LFSCHNr
Me!Datum = Datum
With Me!Dokument
.Class = "Word.Document.8" ' Den Klassennamen angeben.
.OLETypeAllowed = acOLEEmbedded ' Den Typ des Objekts angeben.
.SourceDoc = DBPfad & "Lieferschein.DOT" ' Quelldatei im aktuellen Datenbankpfad
.Action = acOLECreateEmbed ' Das verknüpfte Objekt erstellen.
.Verb = acOLEVerbOpen
.Action = acOLEActivate
End With
Set NeuesDokument = Me.Dokument.Object
With NeuesDokument
.Bookmarks("Firma").Range.Text = CStr(Forms!Dokumentverwaltung.Firma)
.Bookmarks("Strasse").Range.Text = CStr(Forms!Dokumentverwaltung.Strasse)
.Bookmarks("Ort").Range.Text = CStr(Forms!Dokumentverwaltung.PLZ) & " " & CStr(Forms!Dokumentverwaltung.Ort)
.Bookmarks("Land").Range.Text = CStr(Forms!Dokumentverwaltung.Land)
End With
Set NeuesDokument = Nothing
- Code hinter Button „An Word“
Private Sub btnAnWord_Befehl32_Click()
Dim WordActiveDoc As Word.Document
Dim Rs As Recordset
Dim SQL As String
Dim rsBookmark As String, FeldTextmarke As Bookmark
SQL = "Select Tabelle2.LFSCHNr, KDCODE.Datum, KDCODE.Stück, KDCODE.StkLstNr, KDCODE.BestellNr, KDCODE.ArtNr, KDCODE.GeräteNr, KDCODE.Preis" & _
"FROM Tabelle2" & _
"INNERJOIN KDCODE" & _
"ON Tabelle2.Kennummer = KDCODE.Tabelle2_ID" & _
"WHERE ((([Tabelle2].LFSCHNr) >= [LFSCHNr?('*)]) And (([KDCODE].Datum) = [Datum()])))" & _
"OrderBy = Tabelle2.LFSCHNr DESC"
- Hier erhalte ich die Fehlermeldung 91-
_Set Rs = DB.OpenRecordset(SQL, dbOpenDynaset)_
Debug.Print Rs.RecordCount
Set DB = Nothing
End
Set Rs = Me.RecordsetClone
Set Rs = Me.Bookmark
With Word.ActiveDocument.Bookmarks.Item(FeldTextmarke).Range = Bookmark
.ActiveDocument.Bookmarks("LFSCHNr").Range.Text = CStr(Forms!Dokumentverwaltung!KDCODE.LFSCHNr)
.ActiveDocument.Bookmarks("Stück").Range.Text = CStr(Forms!Dokumentverwaltung!KDCODE.Stück)
.ActiveDocument.Bookmarks("Stklstnr").Range.Text = CStr(Forms!Dokumentverwaltung!KDCODE.StkLstNr)
.ActiveDocument.Bookmarks("Bestellnr").Range.Text = CStr(Forms!Dokumentverwaltung!KDCODE.BestellNr)
.ActiveDocument.Bookmarks("Artnr").Range.Text = CStr(Forms!Dokumentverwaltung!KDCODE.ArtNr)
.ActiveDocument.Bookmarks("Gerätenr").Range.Text = CStr(Forms!Dokumentverwaltung!KDCODE.GeräteNr)
End With
End Sub |  |
 SQL,VBA Laufzeitfehler!!!! | 53 | Rudi | 22.03.02 18:48 |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
vb@rchiv CD Vol.6 vb@rchiv Vol.6
Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
Online-Update-Funktion Entwickler-Vollversionen u.v.m.Jetzt zugreifen Tipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) Neu! sevEingabe 3.0 
Einfach stark!
Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. Weitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|