28.09.2016, 19:15
(Dieser Beitrag wurde zuletzt bearbeitet: 02.10.2016, 17:44 von Kuwer.
Bearbeitungsgrund: Betreff berichtigt
)
Wo liegt der Fehler, wenn meine IF Bedingung (Filtern) nicht berücksichtigt wird?
Hat hier jemand eine Lösung parat.
Hier mein Problem:
Danke an eurem Interesse.
milli
' Option Explicit
Sub WordTabelleSchreiben()
Dim appWord As Object
Dim i As Integer, k As Integer
Dim tb As Object
ThisWorkbook.Worksheets("Tabelle1").Activate
excelZeile = 1
anzahlGefiltert = 0
anzahlGesamt = 0
Do
If Cells(excelZeile, 4).Value = "" Then
Exit Do
End If
If Cells(excelZeile, 4).Value >= 2 And Cells(excelZeile, 4).Value <= 4 Then
' Filter Anzahl gefiltert = AnzahlGefiltert + 1
End If
excelZeile = excelZeile + 1
anzahlGesamt = anzahlGesamt + 1
Loop
' Anwendung "Word" starten
Set appWord = CreateObject("Word.Application")
' Neues Word-Dokument erstellen
appWord.Documents.Add
' Neue Tabelle erstellen und innen wie außen mit Rahmen versehen
Set tb = appWord.ActiveDocument.Tables.Add _
(appWord.ActiveDocument.Range(0), 21, 5) ' Erklärung: 21 = 21 Zeilen. 5 = 5 Spalten
tb.Borders.InsideLineStyle = 1 'wdLineStyleSingle
tb.Borders.OutsideLineStyle = 1 'wdLineStyleSingle
For i = 1 To 21 ' Erklärung = 21 Zeilen aus Tabelle
For k = 1 To 5 ' 5 = 5 Spalten aus Tabelle
' Tabellenzelle mit Text aus Excel-Zelle füllen
tb.Cell(i, k).Range.Text = Cells(i, k).Value
Next k
Next i
' Word-Dokument speichern mit Dateiname
appWord.ActiveDocument.SaveAs "C:\Users\wolli25\Desktop\tabelle55.docx"
' Anwendung "Word" beenden
appWord.Quit
End Sub
Hat hier jemand eine Lösung parat.
Hier mein Problem:
Danke an eurem Interesse.
milli
' Option Explicit
Sub WordTabelleSchreiben()
Dim appWord As Object
Dim i As Integer, k As Integer
Dim tb As Object
ThisWorkbook.Worksheets("Tabelle1").Activate
excelZeile = 1
anzahlGefiltert = 0
anzahlGesamt = 0
Do
If Cells(excelZeile, 4).Value = "" Then
Exit Do
End If
If Cells(excelZeile, 4).Value >= 2 And Cells(excelZeile, 4).Value <= 4 Then
' Filter Anzahl gefiltert = AnzahlGefiltert + 1
End If
excelZeile = excelZeile + 1
anzahlGesamt = anzahlGesamt + 1
Loop
' Anwendung "Word" starten
Set appWord = CreateObject("Word.Application")
' Neues Word-Dokument erstellen
appWord.Documents.Add
' Neue Tabelle erstellen und innen wie außen mit Rahmen versehen
Set tb = appWord.ActiveDocument.Tables.Add _
(appWord.ActiveDocument.Range(0), 21, 5) ' Erklärung: 21 = 21 Zeilen. 5 = 5 Spalten
tb.Borders.InsideLineStyle = 1 'wdLineStyleSingle
tb.Borders.OutsideLineStyle = 1 'wdLineStyleSingle
For i = 1 To 21 ' Erklärung = 21 Zeilen aus Tabelle
For k = 1 To 5 ' 5 = 5 Spalten aus Tabelle
' Tabellenzelle mit Text aus Excel-Zelle füllen
tb.Cell(i, k).Range.Text = Cells(i, k).Value
Next k
Next i
' Word-Dokument speichern mit Dateiname
appWord.ActiveDocument.SaveAs "C:\Users\wolli25\Desktop\tabelle55.docx"
' Anwendung "Word" beenden
appWord.Quit
End Sub