Ein zweites Mal ist nicht möglich
#11
Hallo Case.
Jetzt bin ich wieder da.
Irgendwie stehe ich auf dem Schlauch. Ich referenziere doch ausreichend, … dachte ich zumindest. Aber weiß nicht was ändern, denn:
Hier habe ich doch auf das Objekt genau referenziert
Code:
Set wdtab = wddoc.Tables.Add(Range:=wddoc.Bookmarks("Tabelle").Range, NumRows:=z2 - z1 + 1, NumColumns:=8, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:=wdAutoFitFixed)
       With wdtab
           .Borders.Enable = False
Set wdtab = wddoc…. usw.
Dann nur noch with wdtab usw.

In dem von Dir genannten Beispiel mit Access denke ich es zu verstehen, weil er mit "Selection" arbeitet, aber ich habe doch kein Selection.

Ich bin halt ziemlich neu in dem Excel-Dschungel und habe es mir quasi selber erarbeitet. Vielleicht kannst mir etwas konkreteren Tipp geben.

Wäre nett.
Danke

Danke für den Tipp Kuwer. Ich habe es versucht.
Leider hat es nichts gebracht.
Grüße
Nyn007
Top
#12
Hallo, :19:

doch - du hast hier definitiv eine unzureichende Referenzierung ".Columns(1).PreferredWidth = CentimetersToPoints(1)". Da muss die Applikation davor. Das steht doch in meinem zweiten Link. Da geht es doch um Word: :21:

Zitat:
Visual Basic hat einen Verweis zu Word durch eine Codezeile, die ein Word-Objekt, Methode oder Eigenschaft aufruft, ohne dass sie eine Word-Objektvariable. Visual Basic wird dieser Verweis nicht freigegeben, bis Sie das Programm beenden. Dieser unzureichend definierte Verweis stört Automatisierungscode, wenn der Code mehr als einmal ausgeführt wird.

Mehr als einmal - genau dein Problem. Samt passender Fehlermeldung...

Siehe hier...

CentimetersToPoints ist eines deiner Probleme. Hier muss die entsprechende Applikation - hier Word - mit angegeben werden. Der Link mit Access war nur der Hinweis darauf. :21:
[-] Folgende(r) 1 Nutzer sagt Danke an Gast für diesen Beitrag:
  • Nyn007
Top
#13
Hallo Stefan.

Jetzt habe ich Dich verstanden.
Gleich gings aber weiter. In der Zeile … = LinesToPoints(0.9) hat das "Application" nicht geholfen. Laut Hilfe sollte es aber sein. Weißt Du was davor kommt?

Grüße
Top
#14
Hallo, :19:

also ich heiße nicht Stefan - antworte aber trotzdem mal. :21:

Du kannst nicht einfach Applikation davor schreiben. Du hast doch irgendwann in deinem Code (der ist doch von dir?) "Dim wdapp As New Word.Application" geschrieben. Das ist jetzt deine Applikation bzw. Objektvariable (wdapp). Mit der musst du arbeiten. Da du Subs hast, die mit deinem Worddokument arbeiten, musst du die Applikation (bitte nicht wieder falsch verstehen) mit übergeben. :21:
[-] Folgende(r) 1 Nutzer sagt Danke an Gast für diesen Beitrag:
  • Nyn007
Top
#15
Danke case.

Jetzt geht es. Musste noch an ein paar Stellen korrigieren und nun geht es.
Ich verstehe dennoch nicht, wiese ich einmal mit "Application" auskomme und wieso ein anderes Mal "Word.Application" nehmen muss. Wie unterscheide ich die Prozeduren?

Grüße
Nyn007
Top
#16
Hallöchen,

wenn Du in einer Anwendung bist, z.B. Excel, und schreibst Application, bezieht sich das auf diese Anwendung, z.B. Excel.
Willst Du was aus einer anderen Anwendung, z.B. Word, und bist in Excel, musst Du das entsprechend kennzeichnen.

Ist wie mit einer Wegbeschreibung. Wenn Du irgendwo nach einem Bahnhof fragst, wird man Dir, sofern es einen im Ort gibt, den Weg zu diesem beschreiben. Wenn Du allerdings was von einem Bahnhof in einer anderen Stadt wissen willst, z.B. in Gera was vom Leipziger Hauptbahnhof, solltest Du das auch kundtun sonst bekommst Du falsche Informationen. Ich hoffe, Du verstehts jetzt nicht nur Bahnhof :15:
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#17
(10.07.2019, 17:52)schauan schrieb: Ich hoffe, Du verstehts jetzt nicht nur Bahnhof  :15:

Hallo, :19:

doch. :21:
Top
#18
Hallo schauan.

Im Prinzip ist alles logisch und klar.
Aber ich habe aus Excel in einem Worddokument das Format einer eingebauten Tabelle editiert. Dort schrieb ich nur "Application". Aus Excel in Word geschrieben. ;-?

Grüße
Nyn007
Top
#19
Was soll das Ganze mit Word?

Mit INDEX() schießt man sich die Rechnungsdaten in ein Excel-Formular. Ohne Interaktion von Programmen.

Das Formular kannst Du sogar trotzdem aktualisieren mit neuen Stammdaten. Denn Du wirst von jeder Rechnung ein PDF archivieren, so dass die früheren Stände ersichtlich bleiben.
WIN/MSO schicken angeblich alle 5 Sekunden Deinen Screen heim zu Papa (recall-Klausel). 
Top
#20
Hallöchen,

Zitat:Aber ich habe aus Excel in einem Worddokument das Format einer eingebauten Tabelle editiert.

ja genau, das ist der Punkt ...
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste