Excel aus VB steuern

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von drschef.

    Excel aus VB steuern

    Hallo,

    ich bediene Excel 2010 aus VB 2010 Express Edition. (Fast) alles klappt mit folgender Ausnahme:

    VB.NET-Quellcode

    1. Dim Ex As Object = CreateObject("excel.Application")
    2. Dim Wb As Object = Ex.Workbooks.Add()
    3. Dim Sh As Object = Wb.Worksheets(1)
    4. Ex.Workbooks.Open("C:\!Gert\!00 TMP\Test.xlsx")
    5. .Rows(1).rowheight = 1.5 * .StandardHeight
    6. .Rows(1).Font.Bold = True
    7. .Rows(1).Font.Color = -16776961
    8. .Rows(1).VerticalAlignment = xlVAlignCenter 'Hier kommt Fehler "...nicht deklariert...kann nicht zugegriffen werden"


    Spaltenhöhe und Schrifteigenschaften funktionieren. Das Alignment nicht. Die Zeile habe ich vielfach variiert. Alle Hinweise aus Recherchen haben das Problem bisher nicht gelöst.
    Du musst einen Verweis auf das "Excel Object Library" setzen.

    Hier noch kleines Beispiel
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Imports Microsoft.Office.Interop
    2. Public Class MainForm
    3. Private Sub ActionButton_Click(sender As Object, e As EventArgs) Handles ActionButton.Click
    4. ' Testdatei
    5. Dim filePath As String = "C:\TestData\Excel\testfile.xlsx"
    6. Dim xlApp As New Excel.Application ' Excel App-Instanz
    7. xlApp.Visible = True ' Excel-Fenster anzeigen
    8. Dim xlWorkbook As Excel.Workbook = xlApp.Workbooks.Open(filePath) ' Excel-Mappe öffnen
    9. Dim xlSheet As Excel.Worksheet = xlWorkbook.Worksheets(1) ' Tabelle1 (1. Tabelle in der Mappe)
    10. Dim headRow = CType(xlSheet.Range("A1:N1"), Excel.Range) ' Zeile 1, Spalte A bis N
    11. With headRow
    12. ' Schrift
    13. .Font.Bold = True ' Schrift fett
    14. .Font.Size = 16 ' Schriftgröße
    15. ' Ausrichtung
    16. .VerticalAlignment = Excel.XlVAlign.xlVAlignCenter ' vertikal mittig
    17. .HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter ' hozirontal mittig
    18. ' Rahmen
    19. .Borders.LineStyle = Excel.XlLineStyle.xlContinuous
    20. .Borders.Weight = Excel.XlBorderWeight.xlThick
    21. .Borders.ColorIndex = 0
    22. ' Hintergrund
    23. .Interior.Color = 50
    24. .Interior.Pattern = Excel.Constants.xlSolid
    25. End With
    26. End Sub
    27. End Class
    Hallo,

    dank der Hinweise ließ sich das Problem lösen. Ich habe scheinbar immer mit den falschen Verweisen experimentiert. Und dann hat mich irritiert, dass sich alle anderen Eigenschaften zuweisen ließen außer dem Alignment. Dadurch habe ich in der falschen Richtung gedacht.

    Nochmals besten Dank an xtts02