none
Excel-Handling aus VB 2008 Express RRS feed

  • Frage

  •  

    Hallo, zusammen!

     

    Ich "bastle" jetzt schon seit einigen Jahren (nach dienstlichem Bedarf) im Access-/Excel-/Word-VBA herum (mehr oder weniger erfolgreich...) und möchte nun zusätzlich in's VB einsteigen.

    Derzeit stelle ich mir die Aufgabe, aus einem VB-Formular ein Excel-Workbook zu laden (klappt schon!), die Anzahl der gefüllten Zeilen zu zählen (klappt auch schon!!) und einen Range auf ungefüllte Zellen zu prüfen - und genau das klappert nicht! :-(

     

    Daher die Bitte an die Experten: gebt mir einen Tipp!

     

    Basis ist eine funktionierende Prozedur aus'm Excel-VBA wie folgt:

     

    Dim Wsf As WorksheetFunction

    Dim Bereich As Range

     

        'Ermitteln, wieviele Zeilen belegt (nach Variable Speichern)
        With ActiveSheet
            intAnzahlZeilen = .UsedRange.Rows.Count

        'Evtl. Leere Zellen im Bereich K2:Mx suchen
            Set Wsf = Application.WorksheetFunction
            Set Bereich = .Range("K2:M" & intAnzahlZeilen & "")
            intLeereZellen = Wsf.CountBlank(Bereich)
           
        End With

     

     

    Hier meine Idee für's VB:

     

    Dim dblLeereZellen As Double

    Dim ExlWS As Excel.Worksheet

    Dim ExlRng As Excel.Range

    Dim Wsf As Excel.WorksheetFunction

     

    ExlRng = oExl.Range("K2:M" & GLint_ZeilenZahl & "")

    Wsf = Nothing

    dblLeereZellen = Wsf.CountBlank(ExlRng) '### Hier kommt die Fehlermeldung! ###

    MsgBox("Anzahl Leere Zellen in der Range: " & dblLeereZellen)

     

     


    Offenbar kennt das VB keine "Set"-Geschichte und die "WorksheetFunction" habe ich auch nicht im Griff...

     

    Vielen Dank im Voraus an euch Alle! & Kollegialen Gruß!!! ;-)

     

    P.S. Hier die eigentliche Fehlermeldung:

    System.NullReferenceException wurde nicht behandelt.
      Message="Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt."

    Donnerstag, 28. August 2008 11:13

Alle Antworten

  • Hallo VB_Chris!

    Logisch.

    Wenn du wsf zuerst Nothing zuweist und nachher eine Exception auftritt die dir sagt, dass das Objekt null ist, musst du dich eigentlich nicht wundern!

    Julian

    Mittwoch, 29. August 2012 18:47