[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 141
  • Last Modified:

Repost: Modifying a loop

Ok, this is what I need the loop to do.
For i = 0 To 31

txtName(0).text=499
txtName(1).text=581 ' 499+82
txtName(2).text=663 ' 499+82+82
.........txtName(31)....
Below are the desired results, notice that at
txtName(16) the value is 539,
txtName(17) the value is 621 '539+82

0      499
1      581
2      663
3      745
4      827
5      909
6      991
7      1073
8      1155
9      1237
10      1319
11      1401
12      1483
13      1565
14      1647
15      1729
16      539
17      621
18      703
19      785
20      867
21      949
22      1031
23      1113
24      1195
25      1277
26      1359
27      1441
28      1523
29      1605
30      1687
31      1769

Thanks much
0
ptran2000
Asked:
ptran2000
1 Solution
 
mcriderCommented:
I think this is what you want...


    Dim iVal As Long
    Dim jVal As Long
    jVal = 499
    For iVal = 0 To 15
        txtName(iVal) = CStr(jVal)
        jVal = jVal + 82
    Next iVal
    jVal = 539
    For iVal = 16 To 31
        txtName(iVal) = CStr(jVal)
        jVal = jVal + 82
    Next iVal



Cheers!®©
0
 
Joe_GriffithCommented:
There are many ways to do this.  I think the most straight forward method is to break it into two loops:

  Dim i           As Integer
  Dim txtName(31) As Integer
 
  For i = 0 To 15
    txtName(i) = 499 + i * 82
  Next
  For i = 16 To 31
    txtName(i) = 539 + (i - 16) * 82
  Next
 
  For i = 0 To 31
    Debug.Print i, txtName(i)
  Next
0
 
Joe_GriffithCommented:
if it has to be in a single loop then try this:

  Dim i           As Integer
  Dim txtName(31) As Integer
 
  For i = 0 To 31
    If i < 16 Then
      txtName(i) = 499 + i * 82
    Else
      txtName(i) = 539 + (i - 16) * 82
    End If
  Next
 
  For i = 0 To 31
    Debug.Print i, txtName(i)
  Next
0
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

 
ptran2000Author Commented:
Any way I can make it with just one loop.  The reason is that I also need to add another element.
0
 
wpsjr1Commented:
Dim i%, lValue&, lCounter&
 
  lValue = 499
  For i = 0 To 31
    If i = 16 Then: lValue = 539: lCounter = 0
    txtName(i).Text = CStr(lValue + (lCounter * 82))
    lCounter = lCounter + 1
  Next i

Enjoy!  :)

Paul
0
 
ptran2000Author Commented:
Joe Griffith has posted the answer first,  Joe please repost so I can give you the points

thanks
0
 
ptran2000Author Commented:
thanks much
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now