Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Excel aus Word ansprechen

Betrifft: Excel aus Word ansprechen von: ing.grohn
Geschrieben am: 02.09.2014 17:46:46

Hallo Forum,
ich komme mit einem Problem nicht weiter:
wenn ein Worddokument geschlossen wird möchte ich eine Information in eine bereits geöffnete Exceldatei schreiben.
Mein Versuch scheiterte kläglich:

Private Sub Document_Close()
Dim xlWbk As Object
Dim objExcel As Object
MsgBox "schliesssen"
Set objExcel = GetObject("Excel.Application.11") '& Version)
Set xlWkb = objExcel("start.xls")

xlWkb.Sheets("Tabelle2").Range("A3").Value = "test"
Set xlWkb = Nothing
MsgBox "fertig"
End Sub

das funktioniert nicht!(im Netz hab ich nichts passendes gefunden)
Weiß jemand eine Lösung?
Vielen Dank für Eure Bemühungen!
Mit freundlichen Grüßen
Albrecht

  

Betrifft: AW: Excel aus Word ansprechen von: ing.grohn
Geschrieben am: 02.09.2014 19:22:19

Hallo Forum,
eine Datei öffnen kann ich jetzt:

Sub WordnachExcel()
Dim objExcel As Object
Set objExcel = CreateObject("Excel.Application")
' Excel Datei öffnen
objExcel.Workbooks.Open ("c:\Kanzlei\start.xls")
' Excel Programm unsichtbar
objExcel.Application.Visible = True

objExcel.Worksheets("Tabelle2").Range("B2").Value = "Testneu"
'
Set objExcel = Nothing

End Sub

Ich möchte aber auf eine bereits geöffnete Datei (Workbook) zugreifen!
Wie macht man das?
Mit freundlichen Grüßen


  

Betrifft: GetObject - Word - Excel... von: Case
Geschrieben am: 02.09.2014 19:41:27

Hallo Albrecht, :-)

Du musst die Datei nicht öffnen - das macht "GetObject" für Dich - allerdings ausgeblendet. Wenn Du dann Änderungen vornimmst und die Datei speicherst, wird sie auch ausgeblendet wieder geöffnet - deshalb ".Windows(1).Visible = True"!

Code im Worddokument:

Option Explicit
Private Sub Document_Close()
    Dim objWB As Object
    On Error GoTo Fin
    Set objWB = GetObject("C:\Kanzlei\start.xls")
    With objWB
        .Worksheets("Tabelle2").Range("B2").Value = "Testneu"
        .Windows(1).Visible = True
        .Close True
    End With
Fin:
    Set objWB = Nothing
    If Err.Number <> 0 Then MsgBox "Error: " & _
        Err.Number & " " & Err.Description
End Sub
Servus
Case



  

Betrifft: Und wenn die Datei offen ist... von: Case
Geschrieben am: 02.09.2014 19:44:18

Hallo Albrecht, :-)

... nimmt "GetObject" sie einfach. ;-)

Servus
Case



  

Betrifft: AW: Und wenn die Datei offen ist... von: ing.grohn
Geschrieben am: 02.09.2014 20:14:42

Hallo Case,
vielen Dank für deine Antwort.
So wirklich funkt das ganze nicht:
1. die Excel-Datei ist geöffnet (neben 3 weiteren WBs)
2. die Excel datei soll beschrieben werden
3. das word dokument wird geschlossen
4. die Excel Datei bleibt geöffnet
das Programm läuft fehlerfrei durch aber die Zelle B2 ist nicht verändert!
Fällt dir noch was dazu ein?
Mit freundlichen Grüßen
Albrecht


  

Betrifft: Wenn Du den... von: Case
Geschrieben am: 02.09.2014 20:23:54

Hallo, :-)

... Wordcode im Worddokument unter ThisDocument hast klappt das - habe ich getestet. ;-)

Servus
Case



  

Betrifft: AW: Wenn Du den... von: ing.grohn
Geschrieben am: 02.09.2014 20:32:02

Hallo Case,
klappt jetzt!!
durch das viele hin und her hatte ich eine schreibgeschützte kopie geöffnet!
dumm gelaufen!! aber jetzt komme ich weiter
Vielen Dank für Deine Geduld
Mit freundlichen Grüßen
Albrecht


  

Betrifft: Na dann... von: Case
Geschrieben am: 02.09.2014 20:43:19

:-)


  

Betrifft: AW: Wenn Du den... von: ing.grohn
Geschrieben am: 02.09.2014 20:44:09

Hallo Case,
klappt jetzt!!
durch das viele hin und her hatte ich eine schreibgeschützte kopie geöffnet!
dumm gelaufen!!

Jetzt noch ein zweites Problem:
wie bekomme ich diesen Programmcode aus einer Dokumentenvorlage in die durch diese generierte neue Textdatei?

Vielen Dank für Deine Geduld
Mit freundlichen Grüßen
Albrecht


  

Betrifft: Das geht dann so... von: Case
Geschrieben am: 02.09.2014 20:57:17

Hallo, :-)

... der Spur nach:

Das hat jetzt aber nur noch mit Word zu tun... :-)

Servus
Case



  

Betrifft: AW: Das geht dann so... von: ing.grohn
Geschrieben am: 02.09.2014 21:00:24

Hallo Case,
ist ok. Englisch ist zwar nicht meine Stärke, aber, ich werd wohl weiter kommen!
So lomg
vielen Dank
Albrecht


 

Beiträge aus den Excel-Beispielen zum Thema "Excel aus Word ansprechen"