+ Reply to Thread
Results 1 to 3 of 3

Is it possible to create variables in a loop..

  1. #1
    shishi
    Guest

    Is it possible to create variables in a loop..

    Hi all,
    I failed to figure this out. I am trying to go through about 300 rows
    and generate some array of data.I am not interested in all the rows.
    Say, I am interested in around 100 rows. Based on some condition I
    select these 100 rows and transpose them and save them to a varaible
    for further processing. I am doing this in a loop. I wish generate the
    variable names, declare them and assign them a value. All these I need
    to do in a loop. Could u please suggest..Thanks to all in advance..

    Dim DutArray as Varaint
    Dim I as Integer
    Dim mCell as Range

    For I = 1 To 300
    Set mCell =
    ThisWorkbook.Sheets("SPECS").Range("START_SPEC").Offset(I, 1)
    DutArray = Application.Transpose(Range(mCell,
    mCell.End(xlToRight)))

    If DutArray(3, 1) = 1 Then

    GoTo PROCESSDUT
    End If
    If DutArray(2, 1) = 1 Then

    Here I wish to save the DutArray on to a new variable..
    like DUT1, DUT2, DUT3, DUT4 etc...
    How can I declare these variables here and then assign some value to
    it.?
    something like
    set "DUT" & I = DutArray

    End If
    Next

    shishi


  2. #2
    Tom Ogilvy
    Guest

    Re: Is it possible to create variables in a loop..

    That isn't supported. That is why you use arrays. The alternative is to
    declare all those variables individually and then put in a line of code for
    each variable in which you assign it a value

    --
    Regards,
    Tom Ogilvy


    "shishi" <[email protected]> wrote in message
    news:[email protected]...
    > Hi all,
    > I failed to figure this out. I am trying to go through about 300 rows
    > and generate some array of data.I am not interested in all the rows.
    > Say, I am interested in around 100 rows. Based on some condition I
    > select these 100 rows and transpose them and save them to a varaible
    > for further processing. I am doing this in a loop. I wish generate the
    > variable names, declare them and assign them a value. All these I need
    > to do in a loop. Could u please suggest..Thanks to all in advance..
    >
    > Dim DutArray as Varaint
    > Dim I as Integer
    > Dim mCell as Range
    >
    > For I = 1 To 300
    > Set mCell =
    > ThisWorkbook.Sheets("SPECS").Range("START_SPEC").Offset(I, 1)
    > DutArray = Application.Transpose(Range(mCell,
    > mCell.End(xlToRight)))
    >
    > If DutArray(3, 1) = 1 Then
    >
    > GoTo PROCESSDUT
    > End If
    > If DutArray(2, 1) = 1 Then
    >
    > Here I wish to save the DutArray on to a new variable..
    > like DUT1, DUT2, DUT3, DUT4 etc...
    > How can I declare these variables here and then assign some value to
    > it.?
    > something like
    > set "DUT" & I = DutArray
    >
    > End If
    > Next
    >
    > shishi
    >




  3. #3
    Vacation's Over
    Guest

    RE: Is it possible to create variables in a loop..

    No you can not "create" variables in code. workarounds are not worth the
    effort.

    However to address your project try using a slightly more complex array -
    MyArray

    where the first dimention is the "name" and the seciond is the value - which
    just happens to be an array. So MyArray("Dut2",1) = the array you want to
    store as DUT2 (assumes a base zero array)

    now MyArray(

    "shishi" wrote:

    > Hi all,
    > I failed to figure this out. I am trying to go through about 300 rows
    > and generate some array of data.I am not interested in all the rows.
    > Say, I am interested in around 100 rows. Based on some condition I
    > select these 100 rows and transpose them and save them to a varaible
    > for further processing. I am doing this in a loop. I wish generate the
    > variable names, declare them and assign them a value. All these I need
    > to do in a loop. Could u please suggest..Thanks to all in advance..
    >
    > Dim DutArray as Varaint
    > Dim I as Integer
    > Dim mCell as Range
    >
    > For I = 1 To 300
    > Set mCell =
    > ThisWorkbook.Sheets("SPECS").Range("START_SPEC").Offset(I, 1)
    > DutArray = Application.Transpose(Range(mCell,
    > mCell.End(xlToRight)))
    >
    > If DutArray(3, 1) = 1 Then
    >
    > GoTo PROCESSDUT
    > End If
    > If DutArray(2, 1) = 1 Then
    >
    > Here I wish to save the DutArray on to a new variable..
    > like DUT1, DUT2, DUT3, DUT4 etc...
    > How can I declare these variables here and then assign some value to
    > it.?
    > something like
    > set "DUT" & I = DutArray
    >
    > End If
    > Next
    >
    > shishi
    >
    >


+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.6.0 RC 1