referencing cells in Excel and finding empty cells

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • mgoold2002@hotmail.com

    #1

    referencing cells in Excel and finding empty cells


    I'm moving some code from Excel vbs into a .NET context and I'm very
    new to .NET. I'm trying to make this Excel vb code work in .NET. My
    questions are: how do I reference cells correctly using the common
    "cells(x,y) " reference, where x and y are integer variables. Also, how
    do I verify that the cells are empty, since, according to the
    documentation, the "IsEmpty" function does not work in .NET now?

    Thanks for any help!

    '//////////START CODE EXAMPLE///////////

    Function getroworcol(row orcol, start)

    Dim intoutside As Integer
    Dim intctr

    'DETERMINE START POINT OF SEARCH
    If roworcol = 0 Then
    outside = 200
    Else
    outside = 50
    End If

    'COUNT BACKWARDS FROM START POINT UNTIL FIND FILLED CELL
    For intctr = outside To 1 Step -1
    If roworcol = 0 Then
    If IsEmpty(Cells(i ntctr, 1)) = False Then
    Exit For
    End If
    ElseIf roworcol = 1 Then
    If IsEmpty(Cells(1 , intctr)) = False Then
    Exit For
    End If
    End If
    Next intctr

    getroworcol = intctr

    End Function

    '////END CODE////////

  • R. MacDonald

    #2
    Re: referencing cells in Excel and finding empty cells

    Hello, mgoold2002,

    Using "Cells" is essentially the same as in Excel VBA, except that you
    will need to apply it to an object (rather than using the "default").
    Perhaps you can replace IsEmpty by comparing the Formula with an empty
    string, as in the example below:

    Dim xlapp As Excel.Applicati on
    xlapp = CType(CreateObj ect("Excel.Appl ication"), _
    Excel.Applicati on)
    Dim wb As Excel.Workbook = _
    xlapp.Workbooks .Open("J:\Test\ ExcelTest\Test. xls")
    Dim xlSheet As Excel.Worksheet = wb.Worksheets(1 )
    Dim currRow As Integer = 1
    xlSheet.Cells(c urrRow, 1) = 1.23
    xlSheet.Cells(c urrRow, 2) = "AB.CD"
    xlSheet.Cells(c urrRow, 3) = Now
    If (xlSheet.Cells( currRow, 4).Formula = "") Then
    MsgBox("It's empty!")
    End If
    wb.Save()
    wb.Close()
    xlapp.Quit()

    Cheers,
    Randy


    mgoold2002@hotm ail.com wrote:
    [color=blue]
    > I'm moving some code from Excel vbs into a .NET context and I'm very
    > new to .NET. I'm trying to make this Excel vb code work in .NET. My
    > questions are: how do I reference cells correctly using the common
    > "cells(x,y) " reference, where x and y are integer variables. Also, how
    > do I verify that the cells are empty, since, according to the
    > documentation, the "IsEmpty" function does not work in .NET now?
    >
    > Thanks for any help!
    >
    > '//////////START CODE EXAMPLE///////////
    >
    > Function getroworcol(row orcol, start)
    >
    > Dim intoutside As Integer
    > Dim intctr
    >
    > 'DETERMINE START POINT OF SEARCH
    > If roworcol = 0 Then
    > outside = 200
    > Else
    > outside = 50
    > End If
    >
    > 'COUNT BACKWARDS FROM START POINT UNTIL FIND FILLED CELL
    > For intctr = outside To 1 Step -1
    > If roworcol = 0 Then
    > If IsEmpty(Cells(i ntctr, 1)) = False Then
    > Exit For
    > End If
    > ElseIf roworcol = 1 Then
    > If IsEmpty(Cells(1 , intctr)) = False Then
    > Exit For
    > End If
    > End If
    > Next intctr
    >
    > getroworcol = intctr
    >
    > End Function
    >
    > '////END CODE////////
    >[/color]

    Comment

    Working...