Das Problem ist, dass die Excel-Schnittstelle viel mit dem Rückgabewert "Object" arbeitet. Somit kann z.B. bei der Cells-Auflistung zur Compile-Zeit nicht festgestellt werden, welche Methoden und Properties das zurückgegebene Objekt enthält. VB ist in dieser Hinsicht gr großzügig. Mit der Voreinstellung "Option Strict Off" werden solche Prüfungen unterdrückt.
Eine Lösung wäre, die Zelle in ein Range-Objekt zu konvertieren. Auf diesem kannst du dann die Methoden aufrufen. Ein Beispiel:
// Zelle konvertieren Dim currentCell As Range = CType(xlSheetKanPara.Cells(2, 3), Range) // oder alternativ currentCell = xlSheetKanPara.Range("B3") // oder auch so currentCell = xlSheetKanPara.Range(xlSheetKanPara.Cells(2, 3)) // und hier der Zugriff currentCell.Value2 = "Test"
Entschuldige die C#-Kommentare, aber ansonsten würde der ganze Code als Kommentar dargestellt.
Dann wäre es schön, wenn du deine Frage als beantwortet markieren (auf das grüne Häkchen neben meiner Antwort klicken) und meine Antwort bewerten würdest. Dies gehört in diesem Forum zum guten Ton.
Danke für das voten. Noch ein kleiner Tip: Du kannst für Kommentare oder um dich zu bedanken auch die Kommentarfunktion benutzen. Die Antworten werden nach Anzahl Punkten absteigend sortiert. So kann es vorkommen, dass dein Kommentar auf eine Antwort aus dem Zusammenhang gerissen wird.