Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

ACC2010, VBA, Serinebriefbeispiel. Objektvariable oder With-Blockvariable nicht festgelegt

Frage Microsoft Microsoft Office

Mitglied: PCFJKG

PCFJKG (Level 1) - Jetzt verbinden

10.11.2010, aktualisiert 13:55 Uhr, 8234 Aufrufe, 10 Kommentare

Verweis eingebunden und Variable deklariert. MS-Access meint aber: nicht festgelegt

Ich habe zur Nutzung der Serienbrieffunktion von MS-Word ein Beispiel aus dem I-Net nutzen wollen:
(
Google:

Autor/Einsender: Angie
Datum: '17.03.2005

Public Function CreateAndPrintDoc(ByRef sMsg As String) As Boolean .........
)

Habe bei mir in Verweise eingetragen: _
Microsoft Word 14.0 Object Library

Dann in einem Modul in einer Prozedur:

Dim strFileName As String
Dim objWDDoc As Word.Document
Dim objWDApp As Word.Application

strFileName = "N:\Vorlagen\Erklär.doc"
Set objWDDoc = objWDApp.Documents.Open(FileName:=strFileName)

Das Dokument liegt exakt an dem bezeichneten Ort, der Fehler kommt in der SET-Zeile. Warum meint Access, dass <objWDDoc> nicht festgelegt ist, wenn ich es doch als Word.Document
deklariert habe ?

Bitte keine Hinweise auf Donkarl oder andere Internetveröffentlichungen zu Serienbriefen. Diese sind entweder so komplex, daß ich sie nicht kapiere (wenn beim Kompilieren Fehlermeldungen kommen - und das war bei jedem Beispiel der Fall -) oder lösen mein Problem nicht; es soll nämlich ein Serienbrief (auf Basis einer Tabelle in einer *.mdb) sofort gedruckt werden.

VISTA 64 Bit
MS-Office 2010

Kann jemand bitte die Frage beantworten oder hat vielleicht sogar eine funktionierende VBA-Lösung, die man sofort nutzen kann ?

Vielen Dank,

PCFJKG
Mitglied: miniversum
10.11.2010 um 16:05 Uhr
Ungetestet kannst du es mal so versuchen:
01.
Dim strFileName As String 
02.
Dim objWDDoc As Object 
03.
 
04.
strFileName = "N:\Vorlagen\Erklär.doc" 
05.
Set objWDDoc = GetObject(strFileName)
Bitte warten ..
Mitglied: Biber
10.11.2010 um 20:18 Uhr
Moin PCFJKG,

alternativ zu miniversums Strategie könntest du ja versuchen, irgendetwas mit der Variable "objWDDoc" zu machen außer sie zu deklarieren.

Die Variable "objWDDoc" ist doch in deiner Zeile...
Set objWDDoc = objWDApp.Documents.Open(FileName:=strFileName)
...eine so leere Hülse wie Paris Hilton.

Mach doch vorher ein:

Set objWDApp = New Word.Application

Grüße
Biber
Bitte warten ..
Mitglied: PCFJKG
11.11.2010 um 05:41 Uhr
Hallo Biber,
genau das wars. Danke !: für Schnelligkeit sowieso und verständliche/nutzbare Antwort (wobei Paris ggf. leer aber ganz hübsch ist...). Zu meine eigenen Unvermögen erspare ich mir einmal einen Kommenntar. Ich hoffe es ist nicht unverschämt, wenn ich zum Serienbrief noch eine Zusatzfrage stelle, den Code habe ich aus dem I-Net:

01.
  
02.
Dim wDDoc As Word.Document 
03.
Dim wDApp As Word.Application 
04.
 
05.
Set wDApp = CreateObject("Word.Application") 
06.
Set wDDoc = wDApp.Documents.Open(strTemplate)  /*strTemplate beinhaltet Pfad und Filename mit extention .dot */ 
07.
 
08.
dBSource = "N:\Vorlagen\SBS.mdb" 
09.
    
10.
 With wDApp 
11.
        .ActiveDocument.MailMerge.OpenDataSource Name:=dBSource _ 
12.
                                               , ConfirmConversions:=False, ReadOnly:=False _ 
13.
                                               , LinkToSource:=True, AddToRecentFiles:=False _ 
14.
                                               , PasswordDocument:="", PasswordTemplate:="" _ 
15.
                                               , WritePasswordDocument:="", WritePasswordTemplate:="" _ 
16.
                                               , Revert:=False, Format:=wdOpenFormatAuto _ 
17.
                                               , Connection:="Provider=Microsoft.Jet.OLEDB.4.0;" _ 
18.
                                                           & "User ID="";" _ 
19.
                                                           & "Mode=Read;Extended Properties="""";" _ 
20.
                                                           & "Jet OLEDB:System database="""";" _ 
21.
                                                           & "Jet OLEDB:Registry Path="""";" _ 
22.
                                                           & "Jet OLEDB:Database Pas" _ 
23.
                                               , SqlStatement:="SELECT * FROM 'T_WordSource'" _ 
24.
                                               , SQLStatement1:="" _ 
25.
                                               , SubType:=wdMergeSubTypeAccess 
26.
    End With 
Ergebnis: <Word konnte die Datenquelle nicht öffnen>.

Weißt Du auch hier Rat ?

Viele Grüße

PCFJKG

[Edit] Codeformatierung nachgetragen. [/Edit]
Bitte warten ..
Mitglied: PCFJKG
11.11.2010 um 05:45 Uhr
Hallo miniversum,

auch Dir vielen Dank (warum nennst Du Dich mini wenn Du maxi antwortest ?). Ansonsten siehe Antwort an Biber und nochmals: Danke für die schnelle Hilfe !

Viele Grüße

PCFJKG
Bitte warten ..
Mitglied: Biber
11.11.2010 um 10:07 Uhr
Moin PCFJKG,

da kann ich nur sagen, was mir sofort ins Auge fällt.

In der Zeile, die ich jetzt dank Codeformatierung als Zeile 23 angeben kann, scheint das Copy&Paste aus dem internet verstümmelt zu sein.
Wo bei dir jetzt steht:
& "Jet OLEDB:Database Pas" _
sollte bestimmt ein String stehen der Art
& "Jet OLEDB:Database Password="";" _

Kannst du mal den Link deiner internet-Quelle mit posten bitte?

Grüße
Biber
Bitte warten ..
Mitglied: miniversum
11.11.2010 um 12:34 Uhr
Ersetze in Zeile 6 das "/* " gegen ein "' "
Bitte warten ..
Mitglied: PCFJKG
11.11.2010 um 16:32 Uhr
Hallo Biber,

sehr gern:

http://www.office-loesung.de/ftopic380835_0_0_asc.php


Es geht dort um Word-Serienbrief Etiketten ...

Danke für Dein Angebot.

Viele Grüße


PCFJKG
Bitte warten ..
Mitglied: Biber
11.11.2010 um 21:15 Uhr
Moin PCFJKG,

dem Link nach zu urteilen, scheint das Skriptkrams des ursprünglichen Autors ja auch nur bedingt zu laufen.

Ich vermute aber stark, dass der Fehler irgendwo in den vielen vielen überflüssigen und unnötigerweise übergebenen Parameter der .OpenDataSource-Methode verschüttet liegt.

Einen der "unglaubwürdigen" Parameter hatte ich schon gepostet, der "halbe Leerstring" bei der Nicht-"User ID" ist ein zweiter Kandidat für ein Syntaxkauderwelsch.

Wenn ich bei meinem (etwas älteren) Word in der VBA-Hilfe das von M$ verfasste Beispiel zu .MailMerge.OpenDataSource anschaue, dann sieht es wesentlich schlanker aus:

01.
' In diesem Beispiel wird ein neues Hauptdokument erstellt  
02.
'und die Tabelle Orders der Microsoft Access-Datenbank Northwind.mdb angefügt. 
03.
 
04.
Dim docNew As Document 
05.
 
06.
Set docNew = Documents.Add 
07.
 
08.
With docNew.MailMerge 
09.
    .MainDocumentType = wdFormLetters 
10.
    .OpenDataSource _ 
11.
        Name:="C:\Program Files\Microsoft Office" & _ 
12.
        "\Office\Samples\Northwind.mdb", _ 
13.
        LinkToSource:=True, AddToRecentFiles:=False, _ 
14.
        Connection:="TABLE Orders" 
15.
End With
Insbesondere dem Hinweis, dass bei der letzten Parameterzeile ein einfaches "Connection:=TABLE orders"
bzw bei dir ein "Connection:=TABLE T_wordsource" reichen könnte, dem solltest du mal nachgehen.

Wegen vollkommen unterschiedlicher Umgebungen und Versionsstände kann ich dir das Testen leider nicht abnehmen und kann auch nur mitraten.

Grüße
Biber
Bitte warten ..
Mitglied: PCFJKG
12.11.2010 um 10:08 Uhr
Hallo Biber,

nun habe ich wenigstens eine Spur. Zwar druckt beim ersten schellen Test Deines Codes MS-Word noch nicht den Serienbrief (Ist nur gestartet im Task-Manager zu sehen), aber ich bekomme zumindest keine Fehlermeldung mehr. Nun kann ich weiter probieren.

Damit erneut ein Dank an Dich ! Ich wünsche Dir ein schönes WE und sende

viele Grüße


PCFJKG
Bitte warten ..
Mitglied: PCFJKG
12.11.2010 um 10:21 Uhr
Hallo miniversum,

das /* ist im "richtigen Code nicht vorhanden, sondern nur hier im Beitrag als Kommentarsyntax verwendet (Angewohnheit vom SQL-SERVER). Aber ich habe eine Testmöglichkeit, die nicht jedesmal den Debugger auf den Plan ruft (siehe Antwort an Biber). Wie ich den automatisierten Seriendruck hinbekomme weiß ich zwar noch nicht, aber ich denke irgendwie muß mailmerge mit MS-Word zum laufen zu bringen sein. Vielleicht finde ich auch im I-Net einCodebeispiel, welches tatsächlich ohne Fehlermeldungen läuft.

Auch Dir natürlich ein schönes WE und danke für Deine Antwort.

Viele Grüße



PCFJKG
Bitte warten ..
Ähnliche Inhalte
Windows Systemdateien
Laufzeitfehler 91 Objektvariable oder With-Blockvariable nicht festgelegt
Frage von DogukannWindows Systemdateien2 Kommentare

Hallo zusammen, ich habe wieder mal einen Problem das ich nicht lösen kann. Vielleicht wurde dieses Problem hier schon ...

Windows Netzwerk
Server nach festgelegtem Zeitraum sperren
gelöst Frage von jale29Windows Netzwerk19 Kommentare

Guten Morgen liebe Community, Die Situation sieht wie folgt aus: Unsere Firma würde gerne Server zu Testzwecken für 2 ...

Windows Server
Basisverzeichnis der Terminaldienste wurde nicht festgelegt
Frage von mexxWindows Server1 Kommentar

Hallo, in einer W2k8 R2 Umgebung mit Terminalservern, AD und GPO erhalte ich bei Anmeldung der User im Systemevent ...

Visual Studio
Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
gelöst Frage von soritoseVisual Studio2 Kommentare

hallo ich bin es mal wieder ich hoffe ich nerve nicht habe mal wieder ein kleines Problem und zwar ...

Neue Wissensbeiträge
Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 1 TagWindows 106 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Sicherheits-Tools

Achtung: Sicherheitslücke im FortiClient VPN-Client

Tipp von kgborn vor 1 TagSicherheits-Tools

Ich weiß nicht, wie häufig die NextGeneration Endpoint Protection-Lösung von Fortinet in deutschen Unternehmen eingesetzt wird. An dieser Stelle ...

Internet

USA: Die FCC schaff die Netzneutralität ab

Information von Frank vor 2 TagenInternet5 Kommentare

Jetzt beschädigt US-Präsident Donald Trump auch noch das Internet. Der neu eingesetzte FCC-Chef Ajit Pai ist bekannter Gegner einer ...

DSL, VDSL

ALL-BM200VDSL2V - Neues VDSL-Modem mit Vectoring von Allnet

Information von Lochkartenstanzer vor 2 TagenDSL, VDSL2 Kommentare

Moin, Falls jemand eine Alternative zu dem draytek sucht: Gruß lks

Heiß diskutierte Inhalte
Batch & Shell
Kann man mit einer .txt Datei eine .bat Datei öffnen?
Frage von HelloWorldBatch & Shell16 Kommentare

Wie schon im Titel beschrieben würde ich gerne durch einfaches klicken auf eine Text oder Word Datei eine Batch ...

Router & Routing
OpenWRT bzw. L.E.D.E auf Buffalo WZR-HP-AG300H - update
gelöst Frage von EpigeneseRouter & Routing11 Kommentare

Guten Tag, ich habe auf einem Buffalo WZR-HP-AG300H die alternative Firmware vom L.E.D.E Projekt geflasht. Ich bin es von ...

Windows Server
Ping auf einen bestimmten Server nicht möglich
gelöst Frage von a.thierWindows Server7 Kommentare

Hallo, ich habe folgendes Problem. srv-dc1: Ping srv-nav > geht Ping srv-exchange > geht nicht srv-exchange: Ping srv-dc1 > ...

Hardware
Fujitsu Workstation mit K80 und Quadro P5000, Fehlermeldung: Connect Power Adapter
Frage von MachelloHardware7 Kommentare

Hallo Zusammen, ich benötige euren Rat da ich ratlos bin. Folgende Konfiguration im Büro: Fujitsu Workstation Celcius R940 Power ...