Click to Add Image

  • Thread starter Thread starter mtm4300 via OfficeKB.com
  • Start date Start date
M

mtm4300 via OfficeKB.com

I have a userform with 10 images that are all not visible when the userform
is loaded. I have a command button that will make each image visible each
time the button is clicked. For instance, if the button is clicked one time,
Image1 becomes Visible. If the button is clicked again, then Image2 becomes
visible, and so on. I cannot figure out how to do this. Can anyone help me?
Thank you.
 
I added 10 images to a userform.

I named them Image1, Image2, ..., Image10.

Then I used this code behind the userform:

Option Explicit
Dim pCtr As Long
Private Sub CommandButton1_Click()
Dim iCtr As Long

If pCtr = 10 Then
pCtr = 1
Else
pCtr = pCtr + 1
End If

For iCtr = 1 To 10
Me.Controls("Image" & iCtr).Visible = CBool(iCtr = pCtr)
Next iCtr
End Sub
Private Sub UserForm_Initialize()
Dim iCtr As Long
For iCtr = 1 To 10
Me.Controls("image" & iCtr).Visible = False
Next iCtr
pCtr = 10 'next will be 1
End Sub
 
This works great.
Is there any way when another Image is added, that the previous Image is kept
visible. For instance, If the button is clicked 2 Times, Image1 (which became
visible after 1 click) and Image2 are both visible.

Dave said:
I added 10 images to a userform.

I named them Image1, Image2, ..., Image10.

Then I used this code behind the userform:

Option Explicit
Dim pCtr As Long
Private Sub CommandButton1_Click()
Dim iCtr As Long

If pCtr = 10 Then
pCtr = 1
Else
pCtr = pCtr + 1
End If

For iCtr = 1 To 10
Me.Controls("Image" & iCtr).Visible = CBool(iCtr = pCtr)
Next iCtr
End Sub
Private Sub UserForm_Initialize()
Dim iCtr As Long
For iCtr = 1 To 10
Me.Controls("image" & iCtr).Visible = False
Next iCtr
pCtr = 10 'next will be 1
End Sub
I have a userform with 10 images that are all not visible when the userform
is loaded. I have a command button that will make each image visible each
[quoted text clipped - 6 lines]
 
And after 10 clicks nothing changes??????

Option Explicit
Dim pCtr As Long
Private Sub CommandButton1_Click()
Dim iCtr As Long

If pCtr = 10 Then
'do nothing
Else
pCtr = pCtr + 1
End If

For iCtr = 1 To 10
Me.Controls("Image" & iCtr).Visible = CBool(iCtr <= pCtr)
Next iCtr
End Sub
Private Sub UserForm_Initialize()
Dim iCtr As Long
For iCtr = 1 To 10
Me.Controls("image" & iCtr).Visible = False
Next iCtr
pCtr = 0 'next will be 1
End Sub


mtm4300 via OfficeKB.com said:
This works great.
Is there any way when another Image is added, that the previous Image is kept
visible. For instance, If the button is clicked 2 Times, Image1 (which became
visible after 1 click) and Image2 are both visible.

Dave said:
I added 10 images to a userform.

I named them Image1, Image2, ..., Image10.

Then I used this code behind the userform:

Option Explicit
Dim pCtr As Long
Private Sub CommandButton1_Click()
Dim iCtr As Long

If pCtr = 10 Then
pCtr = 1
Else
pCtr = pCtr + 1
End If

For iCtr = 1 To 10
Me.Controls("Image" & iCtr).Visible = CBool(iCtr = pCtr)
Next iCtr
End Sub
Private Sub UserForm_Initialize()
Dim iCtr As Long
For iCtr = 1 To 10
Me.Controls("image" & iCtr).Visible = False
Next iCtr
pCtr = 10 'next will be 1
End Sub
I have a userform with 10 images that are all not visible when the userform
is loaded. I have a command button that will make each image visible each
[quoted text clipped - 6 lines]
 
Back
Top