Quelqu'un pourrait me traduire ses 2 ensembles de codes

  • Initiateur de la discussion Initiateur de la discussion Marina01
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Marina01

XLDnaute Occasionnel
Je souhaiterai si possible avoir une explication rapide de chaque ligne de sorte à pouvoir avoir la bonne compréhension car je m'embrouille à chaque fois :

1ère Ensemble :

Private Sub ComboBox1_Change()
ChDir ActiveWorkbook.Path
'rep = "chemin du serveur"
On Error Resume Next
ActiveSheet.Shapes("Image1").Delete
Image1 = ActiveSheet.Pictures.Insert(rep & Me.ComboBox1.Text & ".jpg").Select
Selection.Name = "Image1"
With Me.Shapes("Image1")
.Top = 127
.Left = 70
.Width = 150
.Height = 150
End With
[e2].Select

2 ème ensemble:

Private Sub CommandButton1_Click()

For Each op In UserForm1.Frame2.Controls
If op Then
Select Case op.Caption
Case "F1"
Sheets(1).ComboBox1.ListFillRange = "liste1"
Sheets(1).ComboBox2.ListFillRange = "liste2"
Case "F2"
Sheets(1).ComboBox1.ListFillRange = "liste3"
Sheets(1).ComboBox2.ListFillRange = "liste4"
Case "F3"
Sheets(1).ComboBox1.ListFillRange = "liste5"
Sheets(1).ComboBox2.ListFillRange = "liste5"

End Select
Exit For
End If
Next
Me.Hide
Sheets(1).Select
Sheets(1).ComboBox1.Text = ""
Sheets(1).ComboBox2.Text = ""
Sheets(1).Calculate
ActiveWindow.DisplayHeadings = False

End Sub
 
Re : Quelqu'un pourrait me traduire ses 2 ensembles de codes

Bonjour Marina, bonjour le forum,

Code:
Private Sub ComboBox1_Change() [COLOR=darkgreen]'au changement dans la ComboBox1[/COLOR]
ChDir [COLOR=red](change le dossier courant)[/COLOR] ActiveWorkbook.Path [COLOR=darkgreen]'[/COLOR][COLOR=darkgreen](pour le chemin de ce classeur actif)[/COLOR]
[COLOR=darkgreen]'rep = "chemin du serveur" (vu que cette ligne a été mise en commentaire il faudra, je pense, définir rep en dur si l'image se trouve sur un serveur...)[/COLOR]
On Error Resume Next [COLOR=darkgreen]'si il y a une erreur, passe à la ligne suivante (donc pas de plantage si rep n'est pas défini...)[/COLOR]
ActiveSheet.Shapes("Image1").Delete [COLOR=darkgreen]'supprime l'image "Image1" de l'onglet actif[/COLOR]
Image1 = ActiveSheet.Pictures.Insert(rep & Me.ComboBox1.Text & ".jpg").Select [COLOR=darkgreen]'définit Image1[/COLOR]
[COLOR=darkgreen]'insère une image dont le nom est définit par le nom de la TextBox1, situé dans le serveur (rep)[/COLOR]
Selection.Name = "Image1" [COLOR=darkgreen]'nomme l'image insérée[/COLOR]
With Me.Shapes("Image1") [COLOR=darkgreen]'prend en compte l'image[/COLOR]
    .Top = 127 [COLOR=darkgreen]'définit sa position en hauteur[/COLOR]
    .Left = 70 [COLOR=darkgreen]'définit sa position à gauche[/COLOR]
    .Width = 150 [COLOR=darkgreen]'définit sa largeur[/COLOR]
    .Height = 150 [COLOR=darkgreen]'définit sa hauteur[/COLOR]
End With [COLOR=darkgreen]'fin de la prise en compte de l'image[/COLOR]
[e2].Select [COLOR=darkgreen]'sélectionne la cellule E2 (pour désélectionner l'image certainement)[/COLOR]
End Sub
 
 
Private Sub CommandButton1_Click() [COLOR=darkgreen]'au clic sur le bouton[/COLOR]
For Each op In UserForm1.Frame2.Controls [COLOR=darkgreen]'boucle sur tous les boutons d'option de la frame2 de l'UserForm1[/COLOR]
    If op Then [COLOR=darkgreen]'condition : si le bouton est coché[/COLOR]
        Select Case op.Caption [COLOR=darkgreen]'agit en fonction du nom (caption) du bouton[/COLOR]
            Case "F1" [COLOR=darkgreen]'cas "F1"[/COLOR]
            Sheets(1).ComboBox1.ListFillRange = "liste1" [COLOR=darkgreen]'la ComboBox1 du premier onglet est alimentée par la liste "liste1"[/COLOR]
            Sheets(1).ComboBox2.ListFillRange = "liste2" [COLOR=darkgreen]'la ComboBox2 du premier onglet est alimentée par la liste "liste2"[/COLOR]
            Case "F2"  [COLOR=darkgreen]'etc...[/COLOR]
            Sheets(1).ComboBox1.ListFillRange = "liste3"
            Sheets(1).ComboBox2.ListFillRange = "liste4"
            Case "F3"
            Sheets(1).ComboBox1.ListFillRange = "liste5"
            Sheets(1).ComboBox2.ListFillRange = "liste5"
        End Select [COLOR=darkgreen]'fin de l'action en fonction du nom[/COLOR]
        Exit For [COLOR=darkgreen]'sort de la boucle (dès qu'une condition est remplie)[/COLOR]
    End If [COLOR=darkgreen]'fin de la condition[/COLOR]
Next [COLOR=darkgreen]'prochain bouton d'option de la boucle[/COLOR]
Me.Hide [COLOR=darkgreen]'masque l'Userform[/COLOR]
Sheets(1).Select [COLOR=darkgreen]'active le premier onglet[/COLOR]
Sheets(1).ComboBox1.Text = "" [COLOR=darkgreen]'efface le contenu éventuel de la Combobox1 de cet onglet[/COLOR]
Sheets(1).ComboBox2.Text = "" [COLOR=darkgreen]'efface le contenu éventuel de la Combobox2 de cet onglet[/COLOR]
Sheets(1).Calculate [COLOR=darkgreen]'lance le recalcul de l'onglet (soit il était manuel, soit automatique mais comme il n'y a pas eu de moduf il n'était pas fait...)[/COLOR]
ActiveWindow.DisplayHeadings = False [COLOR=darkgreen]'masque les en-têtes de lignes et de colonnes[/COLOR]
End Sub

Mais pour que tu n'aies pas à attendre l'aide du forum, je te conseille d'utiliser l'aide VBA. Tu place le curseur sur un mot et tu appuie sur la touche F1. Une explication de très bonne qualité te sera fournie...
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
913
Retour