okidaccord
XLDnaute Nouveau
Bonjour,
je me suis inscrit ici dans le but de vous demander de l'aide...
J'ai commencé à le vba depuis peu de temps, et je pensai réussir à me débrouiller seul juste en faisant un peu de lecture, mais ce language très puissant recelle quelques difficulté...
En fait, grossièrement, mon projet a pour but de simplifié la création d'offre pour du matériel.
Je m'explique, on aura le choix :
-Option 1
-Option 2
-Option 3
etc...
On coche toute les options que l'on désire, puis on valide. Après validation, tout le texte correspondant a chacune des ces options sera collé dans un tableau excel, puis exporté en pdf ou imprimer.
Donc, ma première étape est de créé ce "formulaire", là ou j'aurai a choisir mes options...
J'avai au départ pensé inséré manuellement des cases à cocher avec la boite a outil controles, mais je me rend compte que si j'ai beaucoup d'option à ajouter, le travail de mise en forme va être très long... De plus, pour maintenir à jour les choix d'option, cela risque de ne pas être pratique.
Pour cette raison, je souhaiterait faire une macro qui me demanderai par boite de dialogue l'intitulé de cette case à cocher, puis il me demanderai d'aller cliquer sur la cellule qui explique le détail de cette option et il insérerait automatiquement cette case à cocher à la suite de des autres. Le fait d'associer le détails de l'option à cette case, ne servira que pour la suite, pour générer l'offre total. Ce point là peut donc être omis pour l'instant...
Je précice que sur le net, j'ai déjà trouver le petite enchainement à effectuer pour insérer automatiquement ma case à cocher, mais je n'ai pas trouver comment la renommer....
Dim Obj As OLEObject
Dim i As Integer, x As Integer
x = 5
For i = 1 To x
Set Obj = ActiveSheet.OLEObjects.Add("Forms.CheckBox.1")
With Obj
.Left = Cells(i, 1).Left
.Top = Cells(i, 1).Top
.Width = Cells(i, 1).Width
.Height = Cells(i, 1).Height
End With
Next i
Autre chose, si l'utilisation de USERForm peut être plus simple et plus conviviale, je suis tout ouïe à toute proposition!
Merci de votre aide,
Cordialement
je me suis inscrit ici dans le but de vous demander de l'aide...
J'ai commencé à le vba depuis peu de temps, et je pensai réussir à me débrouiller seul juste en faisant un peu de lecture, mais ce language très puissant recelle quelques difficulté...
En fait, grossièrement, mon projet a pour but de simplifié la création d'offre pour du matériel.
Je m'explique, on aura le choix :
-Option 1
-Option 2
-Option 3
etc...
On coche toute les options que l'on désire, puis on valide. Après validation, tout le texte correspondant a chacune des ces options sera collé dans un tableau excel, puis exporté en pdf ou imprimer.
Donc, ma première étape est de créé ce "formulaire", là ou j'aurai a choisir mes options...
J'avai au départ pensé inséré manuellement des cases à cocher avec la boite a outil controles, mais je me rend compte que si j'ai beaucoup d'option à ajouter, le travail de mise en forme va être très long... De plus, pour maintenir à jour les choix d'option, cela risque de ne pas être pratique.
Pour cette raison, je souhaiterait faire une macro qui me demanderai par boite de dialogue l'intitulé de cette case à cocher, puis il me demanderai d'aller cliquer sur la cellule qui explique le détail de cette option et il insérerait automatiquement cette case à cocher à la suite de des autres. Le fait d'associer le détails de l'option à cette case, ne servira que pour la suite, pour générer l'offre total. Ce point là peut donc être omis pour l'instant...
Je précice que sur le net, j'ai déjà trouver le petite enchainement à effectuer pour insérer automatiquement ma case à cocher, mais je n'ai pas trouver comment la renommer....
Dim Obj As OLEObject
Dim i As Integer, x As Integer
x = 5
For i = 1 To x
Set Obj = ActiveSheet.OLEObjects.Add("Forms.CheckBox.1")
With Obj
.Left = Cells(i, 1).Left
.Top = Cells(i, 1).Top
.Width = Cells(i, 1).Width
.Height = Cells(i, 1).Height
End With
Next i
Autre chose, si l'utilisation de USERForm peut être plus simple et plus conviviale, je suis tout ouïe à toute proposition!
Merci de votre aide,
Cordialement