Ausgabe nach Word und als txt datei
- Excel
Sie verwenden einen veralteten Browser (%browser%) mit Sicherheitsschwachstellen und können nicht alle Funktionen dieser Webseite nutzen.
Hier erfahren Sie, wie einfach Sie Ihren Browser aktualisieren können.
Hier erfahren Sie, wie einfach Sie Ihren Browser aktualisieren können.
Es gibt 12 Antworten in diesem Thema. Der letzte Beitrag () ist von MagigAzazel.
-
-
Höhö, lustitch. Ich glaub wir sollten wirklich ne wer-macht-mir-meine-Hausaufgaben-Sektion erstellen.
Nee, aber ernsthaft:
1.Boardregel § 4 Punkt 3.d schrieb:
Achtet auf eine korrekte Rechtschreibung und Grammatik. Vor allem eine korrekte Zeichensetzung erleichtert es dem Leser, euren Post zu verstehen. Bei völlig unverständlichen Texten behält sich die Administration eine Löschung des Postings vor.
2. Was hast Du denn ganz konkret versucht? Wir korrigieren gern Versuchscode. Ohne Eigenvorschlag werden hier nur die wenigsten aktiv.Ok, in der Datei ist zumindest mal ein Ansatz für das Word-Problem drin.
Dann solltest Du alternativ sagen, was konkret nicht bei Deinem Code funktioniert.
Der erste Schritt ist, bei den Projektverweisen Word einzubinden: VBA-Editor -> Extras -> Verweise ->Microsoft Word 16.0 Object Library
anhaken. Danach geht's schonmal etwas weiter, da dann VBA klar ist, was neWord.Application
ist.
Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.
Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „VaporiZed“ ()
-
-
Du hast ja auch keine Word-Application erstellt. Im Übrigen solltest Du mit Late-Binding arbeiten, nicht mit Early-Binding.
Ungetestet:
Visual Basic-Quellcode
- Private Sub btn_AusgabeWord_Click()
- Dim wdApp As Object
- Dim meineTabelle As Object
- Dim znr As Long
- Dim Rowz As Long
- Dim cb As Control
- Dim werte() As String
- Set wdApp = CreateObject("Word.Application")
- With wdApp
- .Visible = True
- .Activate
- .Documents.Add
- With .ActiveDocument.Selection
- .TypeText "Flüge in den Kontinenten " & Me.cmb_Kontinent & _
- vbTab & "für das Jahr: " & Me.cmb_Jahr & _
- vbTab & "Kategorie: " & Me.cmb_Kategorie
- .TypeParagraph
- .TypeParagraph
- Set meineTabelle = .Tables.Add(.Range, 2, 4)
- With meineTabelle
- .Cell(1, 1).Range.InsertAfter "Flugnummer:"
- .Cell(1, 2).Range.InsertAfter "Beförderte Passagiere:"
- .Cell(1, 3).Range.InsertAfter "Umsatz/€"
- While Tabelle1.Range("A" & znr) <> ""
- If cmb_Kontinent = Range("A" & 2) Then
- werte = Tabelle1.Range("B" & 2)
- End If
- znr = znr + 1
- Wend
- End With
- End With
- wdApp.ActiveDocument.SaveAs2 ActiveWorkbook.Path & "\" & "161006_102601_Fluglinien_" & _
- Me.cmb_Kontinent & Me.cmb_Jahr & Me.cmb_Kategorie & ".docx"
- End With
- End Sub
-
-
Sieht so aus als hättest Du kein Word, oder Word ist nicht korrekt registriert, oder der Automatisierungsdienst läuft nicht/fehlerhaft. support.microsoft.com/de-de/to…ab-371f-1245-aad6f37e68b6
-
-
Gibt es "Tabelle1" bei Dir? Wenn nicht versuche es mit
Sheets("Tabelle1")
. -
-
Was ist "znr"? Du hast viele Deklarationen drin die im Code nicht definiert sind.
-
-
MagigAzazel schrieb:
was genau meinst du mit zu viele deklarationen die nicht definiert sind
In Deinem Beispielcode im Eingangspost stehen Variablen die nicht gefüllt sind. "znr" solltest Du übrigens am Anfang des Makros auf 1 setzen (Der Zeilenzähler beginnt bei 1), alsoznr = 1
. -
Ich habe nach einigen Versuchen den code soweit hinbekommen das sich word öffnet und ich den Inhalt ausgegeben bekomme nur bekomme ich den kompletten spalteninhalt, nicht nur den inhalt des ausgewählten kontinents und alles wird hintereinander und nicht unter einander ausgegeben.
Visual Basic-Quellcode
- Private Sub btn_AusgabeWord_Click()
- Dim wdApp As New Word.Application
- Dim meineTabelle As Word.Table
- Dim znr As Integer
- Dim Rowz As Integer
- Dim cb As Control, werte() As String
- With wdApp
- .Visible = True
- .Activate
- .Documents.Add
- .ActiveDocument.Select
- With .Selection
- .TypeText "Flüge in den Kontinenten " & Me.cmb_Kontinent & vbTab & "für das Jahr: " & Me.cmb_Jahr & _
- vbTab & "Kategorie: " & Me.cmb_Kategorie
- .TypeParagraph
- .TypeParagraph
- Set meineTabelle = .Tables.Add(.Range, 2, 4)
- With meineTabelle
- .Cell(1, 1).Range.InsertAfter "Flugnummer:"
- .Cell(1, 2).Range.InsertAfter "Beförderte Passagiere:"
- .Cell(1, 3).Range.InsertAfter "Umsatz/€"
- znr = 1
- Rowz = 1
- While Tabelle2.Range("A" & znr + 1) <> ""
- _
- With meineTabelle
- .Cell(2, 1).Range.InsertAfter Range("B" & Rowz)
- .Cell(2, 2).Range.InsertAfter Range("E" & Rowz)
- .Cell(2, 3).Range.InsertAfter Range("F" & Rowz)
- znr = znr + 1
- Rowz = Rowz + 1
- End With
- ActiveDocument.SaveAs2 ActiveWorkbook.Path & "\" & "161006_102601_Fluglinien_" & Me.cmb_Kontinent & Me.cmb_Jahr & Me.cmb_Kategorie & ".docx"
- Wend
- End With
- End With
- End With
- ' While Range("A" & znr) <> ""
- ' .Cell(2, 1).Range.InsertAfter ("B" & Rowz)
- ' .Cell(2, 2).Range.InsertAfter ("E" & Rowz)
- ' .Cell(2, 3).Range.InsertAfter ("F" & Rowz)
- ' Rowz = Rowz + 1
- ' znr = znr + 1
- ' Wend
- ' For Each cb In Me.Controls
- 'If TypeName(cb) = "ComboBox" Then
- ' werte = cb.Ta
- End Sub
-
Ähnliche Themen
-
3 Benutzer haben hier geschrieben
- MagigAzazel (7)
- mumpel (5)
- VaporiZed (1)