Microsoft KB Archive/162050

= XL97: Using the LoadPicture Function with an Image Control =

Article ID: 162050

Article Last Modified on 11/23/2006

-

APPLIES TO


 * Microsoft Excel 97 Standard Edition

-



This article was previously published under Q162050





SUMMARY
In Microsoft Excel 97, you can add an Image control to a UserForm. There are two ways to specify which picture file is displayed in the Image control; you can specify the picture when you design the UserForm, or when you run the UserForm. The technique you use depends on whether you want to store the picture file with your project.

The advantage of using the run-time method is that the picture file is not stored with the project, which minimizes the size of the project. However, if you distribute the project to others, you must remember to include the picture file with the project file, and you must provide instructions for placing the picture file in the correct location.

This article provides an example Visual Basic for Applications macro that uses the LoadPicture function to load a picture file into an Image control during run time.



MORE INFORMATION
Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific needs. If you have limited programming experience, you may want to contact a Microsoft Certified Partner or the Microsoft fee-based consulting line at (800) 936-5200. For more information about Microsoft Certified Partners, please visit the following Microsoft Web site:

https://partner.microsoft.com/global/30000104

For more information about the support options that are available and about how to contact Microsoft, visit the following Microsoft Web site:

http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS

Creating the UserForm and the Macro Code
 Save and close any open workbooks, create a new workbook, and then start the Visual Basic Editor (press ALT+F11). On the Insert menu, click UserForm.  Add an Image control near the top and center of the UserForm, and then set the following values for the properties for the Image control.      Property   Value -     Name       Image1 AutoSize  True Height    100 Width     100   Add an OptionButton below the Image control to the UserForm and set the following values for the properties for the OptionButton.      Property   Value Name      OptionButton1 Caption   HI                          Add another OptionButton below the first OptionButton to the UserForm and set the following values for the properties for the OptionButton. <pre class="fixed_text">     Property   Value Name      OptionButton2 Caption   BYE </li>  Add another OptionButton below the second OptionButton to the UserForm and set the following values for the properties for the OptionButton. <pre class="fixed_text">     Property   Value Name      OptionButton3 Caption   Clear </li> Double-click the UserForm to display the code module that is associated with the UserForm.</li>  Type the following code for the Initialize event for the UserForm: Private Sub UserForm_Initialize

'Select the "HI" option button. OptionButton1.Value = True

'Load the Hi.bmp picture file into the Image control. Image1.Picture = LoadPicture("C:\Windows\Desktop\hi.bmp") End Sub </li></ol>

NOTE: The path to your Desktop folder may be different, depending on how you logged on to Windows. If you log on to Windows with a password, the Desktop location may be the Windows\Profiles\ \Desktop folder. Therefore, you must use a different path in the LoadPicture function.

<ol>  Type the following code for the Click events for the three OptionButtons: Private Sub OptionButton1_Click

'Load the Hi.bmp picture file into the Image control. Image1.Picture = LoadPicture("C:\Windows\Desktop\hi.bmp")

End Sub

Private Sub OptionButton2_Click

'Load the Bye.bmp picture file into the Image control. Image1.Picture = LoadPicture("C:\Windows\Desktop\bye.bmp")

End Sub

Private Sub OptionButton3_Click

'Clear the picture file in the Image control. Image1.Picture = LoadPicture("")

End Sub </li></ol>

Creating the Two Picture Files

 * 1) Start Microsoft Paint.
 * 2) Create the word HI by free hand. The letters should be about 1.5 inches tall.
 * 3) On the Paint toolbar, click Select, and then draw a square box around the letters you created. The sides of the box should be about 2 inches long.
 * 4) On the Edit menu, click Copy To, in the Copy To dialog box, locate your Desktop, type hi.bmp in the File name box, and then click Save.

NOTE: It is important to save your picture files to the Desktop because the macro code in this article refers to files in your Windows\Desktop folder.


 * 1) Repeat steps 2-4, but type the word BYE and save the file as Bye.bmp.
 * 2) Quit Microsoft Paint.

Running the Macro

 * 1) In the Microsoft Excel Visual Basic Editor, run your UserForm.

The UserForm is displayed, the picture in the Image control is the Hi.bmp picture, and the "HI" OptionButton is selected.
 * 1) Click the "BYE" OptionButton.

The picture in the Image control is the Bye.bmp picture, and the "BYE" OptionButton is selected.


 * 1) Click the "Clear" OptionButton.

The picture in the Image control is cleared completely.


 * 1) Close the UserForm.

NOTE: The Image control in the UserForm does not display any picture when you view the UserForm while you are designing the UserForm.

<div class="references_section">