Concour d'optimisation

Luminou

XLDnaute Junior
Bonjours tout le monde j'espere que vous aller bien?

Je voulait savoir si une bonne ame pouvait arriver a optimiser ce petit programme, je sais que je devrait utiliser une boucle mais il faut changer la maniere de programmer je crois et je ne vois pas comment.

C'est en faite un programme qui analyse la cellule qui se trouve juste en face d'un objet image. Dans cette cellule il y a un code entourer par des parentaises, ce code détermine quel image sera charger dans la case.

D'avance merci.

Code:
Private Sub CommandButton2_Click()
Dim string1 As String
Dim var1 As Variant
Dim var2 As Variant

string1 = Worksheets("gamme").range("C40")
var1 = InStr(string1, "(")

If var1 <> 0 Or var1 <> Null Then
var2 = Mid(string1, var1 + 1, 2)
Image1.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Worksheets("LISTE OUTILS").Image1.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Else
Image1.Picture = Nothing
Worksheets("LISTE OUTILS").Image1.Picture = Nothing
End If

string1 = Worksheets("gamme").range("C57")
var1 = InStr(string1, "(")

If var1 <> 0 Or var1 <> Null Then
var2 = Mid(string1, var1 + 1, 2)
Image2.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Worksheets("LISTE OUTILS").Image2.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Else
Image2.Picture = Nothing
Worksheets("LISTE OUTILS").Image2.Picture = Nothing
End If
string1 = Worksheets("gamme").range("C74")
var1 = InStr(string1, "(")

If var1 <> 0 Or var1 <> Null Then
var2 = Mid(string1, var1 + 1, 2)
Image3.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Worksheets("LISTE OUTILS").Image3.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Else
Image3.Picture = Nothing
Worksheets("LISTE OUTILS").Image3.Picture = Nothing
End If
string1 = Worksheets("gamme").range("C91")
var1 = InStr(string1, "(")

If var1 <> 0 Or var1 <> Null Then
var2 = Mid(string1, var1 + 1, 2)
Image4.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Worksheets("LISTE OUTILS").Image4.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Else
Image4.Picture = Nothing
Worksheets("LISTE OUTILS").Image4.Picture = Nothing
End If
string1 = Worksheets("gamme").range("C108")
var1 = InStr(string1, "(")

If var1 <> 0 Or var1 <> Null Then
var2 = Mid(string1, var1 + 1, 2)
Image5.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Worksheets("LISTE OUTILS").Image5.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Else
Image5.Picture = Nothing
Worksheets("LISTE OUTILS").Image5.Picture = Nothing
End If
string1 = Worksheets("gamme").range("C125")
var1 = InStr(string1, "(")

If var1 <> 0 Or var1 <> Null Then
var2 = Mid(string1, var1 + 1, 2)
Image6.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Worksheets("LISTE OUTILS").Image6.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Else
Image6.Picture = Nothing
Worksheets("LISTE OUTILS").Image6.Picture = Nothing
End If
string1 = Worksheets("gamme").range("C142")
var1 = InStr(string1, "(")

If var1 <> 0 Or var1 <> Null Then
var2 = Mid(string1, var1 + 1, 2)
Image7.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Worksheets("LISTE OUTILS").Image7.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Else
Image7.Picture = Nothing
Worksheets("LISTE OUTILS").Image7.Picture = Nothing
End If
string1 = Worksheets("gamme").range("C159")
var1 = InStr(string1, "(")

If var1 <> 0 Or var1 <> Null Then
var2 = Mid(string1, var1 + 1, 2)
Image8.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Worksheets("LISTE OUTILS").Image8.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Else
Image8.Picture = Nothing
Worksheets("LISTE OUTILS").Image8.Picture = Nothing
End If
string1 = Worksheets("gamme").range("C176")
var1 = InStr(string1, "(")

If var1 <> 0 Or var1 <> Null Then
var2 = Mid(string1, var1 + 1, 2)
Image9.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Worksheets("LISTE OUTILS").Image9.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Else
Image9.Picture = Nothing
Worksheets("LISTE OUTILS").Image9.Picture = Nothing
End If
string1 = Worksheets("gamme").range("C193")
var1 = InStr(string1, "(")

If var1 <> 0 Or var1 <> Null Then
var2 = Mid(string1, var1 + 1, 2)
Image10.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Worksheets("LISTE OUTILS").Image10.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Else
Image10.Picture = Nothing
Worksheets("LISTE OUTILS").Image10.Picture = Nothing
End If
string1 = Worksheets("gamme").range("C210")
var1 = InStr(string1, "(")

If var1 <> 0 Or var1 <> Null Then
var2 = Mid(string1, var1 + 1, 2)
Image11.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Worksheets("LISTE OUTILS").Image11.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Else
Image11.Picture = Nothing
Worksheets("LISTE OUTILS").Image11.Picture = Nothing
End If
string1 = Worksheets("gamme").range("C227")
var1 = InStr(string1, "(")

If var1 <> 0 Or var1 <> Null Then
var2 = Mid(string1, var1 + 1, 2)
Image12.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Worksheets("LISTE OUTILS").Image12.Picture = LoadPicture(Worksheets("gamme").range("H35") & var2 & ".bmp")
Else
Image12.Picture = Nothing
Worksheets("LISTE OUTILS").Image12.Picture = Nothing
End If
End Sub
 

tototiti2008

XLDnaute Barbatruc
Re : Concour d'optimisation

Bonjour Luminou,

à tester :

Code:
Dim i As Long, String1 As String, var1, var2
    For i = 40 To 227 Step 17
        String1 = Worksheets("gamme").Range("C" & i).Value
        var1 = InStr(String1, "(")
            If var1 <> 0 Or var1 <> Null Then
                var2 = Mid(String1, var1 + 1, 2)
                Worksheets("LISTE OUTILS").OLEObjects("Image" & ((i - 23) / 17)).Object.Picture = LoadPicture(Worksheets("gamme").Range("H35") & var2 & ".bmp")
            Else
                Worksheets("LISTE OUTILS").OLEObjects("Image" & ((i - 23) / 17)).Object.Picture = Nothing
            End If
    Next i
 

Discussions similaires

Statistiques des forums

Discussions
312 556
Messages
2 089 586
Membres
104 215
dernier inscrit
Jean Michl