Téléchargement
illégal
Posez votre question Signaler

[excel-vba-userform] boucle et fonctions [Résolu]

KdTcA 248Messages postés 4 août 2005Date d'inscription - Dernière réponse le 16 mai 2007 à 14:23
Bonjour à tous!

ça fait un petit bout de temps que je ne suis pas passé ici alors je profite d'une difficulté pour revenir! :)

J'ai un classeur excel avec pleins de feuilles nommées 00,01,02 ...

J'ai un userform avec pleins de boutons nommés type_00,type_01,type02 ...

J'aimerais dans une boucle vba déclarer mes actions pour chaque boutonsdu style :

for i = 0 to 9
for j = 0 to 9
private function type_ij_Click()
resultat.titre.caption=type_ij.caption
'et d'autres truc correspondant à mes feuilles
end sub
next j
next i



une idée??? :)

Merci d'avance
Lire la suite 

[excel-vba-userform] boucle et fonctions »

3 réponses
Réponse
+1
moins plus
Merci à tous pour vos réponses!!! lol

J'ai trouvé ce que je voulais!

Pour ceux que ça intéresse :

Sub Test()
For Each O In ActiveSheet.OLEObjects
If O.progID = "Forms.CommandButton.1" Then
Code = "Sub type_" & O.Name & "_Click()" & vbCrLf 
Code = Code & "Sheets("O.Name").select" & vbCrLf 
Code = Code & "End Sub"
End If
Next
End Sub

Ajouter un commentaire
Réponse
+0
moins plus
up!
Ajouter un commentaire
Réponse
+0
moins plus
bonjour à tous,
je suis actuellement en train de réaliser une macro en VBA qui ne marche pas.
Ma fonction doit me perttre de :
- trouver sur une plage de données une cellule appelée "Designation"
- une fois la cellule trouvée, je garde la colonne correspondante pour la comparer à una autre colonne d'une feuille appartenant à un autre classeur. si un intitulé n'est pas présent dans la colonne de "leaks index" alors je le rajoute à la fin de la colonne

voici ma macro :

Option Explicit
Sub Designation_Systeme_Manquant()

Dim Classeur1 As Workbook
Dim Classeur2 As Workbook

Set Classeur1 = Workbooks("leaks index.xls")
Set Classeur2 = Workbooks("Calcul_compare+_Girassol.xls")

Dim Feuille As Worksheet
Dim F1 As Worksheet

'Dim Plage As Range
'Dim Cellule As Range
'Dim Posit As Long

Set F1 = Classeur1.Worksheets("all_type")

Dim lig As Integer
Dim col As Integer
Dim colonneDesign As Integer
Dim ligneDesign As Integer
Dim lig1 As Integer

For Each Feuille In Classeur2.Worksheets

'Set Plage = Sheets("Feuille").Range(Cells(1, 1), Cells(10, 10))
'For Each Cellule In Plage

For lig = 1 To 10
For col = 1 To 10

'détection de la colonne contenant les intitulés des systèmes
If Cells(lig, col).Value = "Designation" Then
colonneDesign = col
ligneDesign = lig + 2
End If

Next col
Next lig

' détection des systèmes manquant dans leaks index
While ligneDesign <= 200

For lig1 = 7 To 163

If Feuille.Cells(ligneDesign, colonneDesign).Value = F1.Cells(lig1, 2).Value Then
ligneDesign = ligneDesign + 1
End If

If lig1 = 163 Then

lig1 = 164
While F1.Cells(lig1, 2).Value <> ""
lig1 = lig1 + 1
Wend

If F1.Cells(lig1, 2).Value = "" Then
F1.Cells(lig1, 2).Value = Feuille.Cells(ligneDesign, colonneDesign).Value
End If

End If

Next lig1

Wend

Next Feuille

End Sub

quelles sont mes erreurs ?
merci d'avance
Ajouter un commentaire
Ce document intitulé « [excel-vba-userform] boucle et fonctions » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?