Une petite lancement macro via userform
Résolu
manautop
Messages postés
152
Statut
Membre
-
manautop Messages postés 152 Statut Membre -
manautop Messages postés 152 Statut Membre -
Bonjour, oui c est encore moi
j ai un petit probleme aue je ne comprend pas
j ai cree une macro TDC que je lance via une barre d outil personnalise
j ai essaye d ajouter un userform que j ai cree pour le moment juste avec deux boutons
- un bouton lancer la macro
- un bouton quitter
( a l interieur de luserform je met un message d avertissement et quelaue recommandation pour que la macro s excute TDC sans encombre)
et mis le code suivant en debut de ma macro
Private Sub lancerLaMacro_Click()
Call TDC
End Sub
Private Sub quitterLaMacro_Click()
Unload checkTDC
End Sub
le probleme c est que pour quitter j en ai aucun probleme par contre il refuse de lancer la macro TDC.
je precise que je cree tout dans mon dossier personnel de projet que j ai appeller john (personal.XLS)
quelqu un aurais une solution svp
mais j ai une erreur pour lancer la macro
merci
j ai un petit probleme aue je ne comprend pas
j ai cree une macro TDC que je lance via une barre d outil personnalise
j ai essaye d ajouter un userform que j ai cree pour le moment juste avec deux boutons
- un bouton lancer la macro
- un bouton quitter
( a l interieur de luserform je met un message d avertissement et quelaue recommandation pour que la macro s excute TDC sans encombre)
et mis le code suivant en debut de ma macro
Private Sub lancerLaMacro_Click()
Call TDC
End Sub
Private Sub quitterLaMacro_Click()
Unload checkTDC
End Sub
le probleme c est que pour quitter j en ai aucun probleme par contre il refuse de lancer la macro TDC.
je precise que je cree tout dans mon dossier personnel de projet que j ai appeller john (personal.XLS)
quelqu un aurais une solution svp
mais j ai une erreur pour lancer la macro
merci
A voir également:
- Une petite lancement macro via userform
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Petite amie virtuelle en français gratuit - Accueil - Intelligence artificielle
- Jitbit macro recorder - Télécharger - Confidentialité
- Via michelin carte - Télécharger - Transports & Cartes
20 réponses
Bonjour,
Ou se trouve la procédure [TDC] et que fait-elle ?
Se serait plus simple avec le fichier sur : https://www.cjoint.com/ !
Ou se trouve la procédure [TDC] et que fait-elle ?
Se serait plus simple avec le fichier sur : https://www.cjoint.com/ !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
sinon voila comment ca marche, j ai cree une barre d outil personnelle avec une icone qui quand je clique dessus lance cette macro
Private Sub veriftdc()
checkTDC.Show
End Sub
donc cette macro lance une userform chektdc, avec en texte quelques recommendation et deux bouton un pour lancer la macro TDC (qui est une macro qui fait des tableau croise dynamique de maniere assite) donc dans cette userform j ai ca
Private Sub Run_Click()
Call TDC
End Sub
Private Sub closee_Click()
Unload checkTDC
End Sub
Private Sub Label1_Click()
' Copy the sheet(1)
ThisWorkbook.Sheets(1).Copy
' Send Email
With ActiveWorkbook
.SendMail Recipients:=Array("j.######@live.fr")
.Close SaveChanges:=False
End With
tout marche sauf que le bouton Run ne veut veut pas appeller la macro TDC dont je te met le code
Sub TDC()
Dim Num_col As Integer, Num_col2 As Integer, Num_col3 As Integer, Num_col4 As Integer, diff As Integer
Set range1 = Application.InputBox("Select the title of the first variable !", "Sélection de cellules", Type:=8)
Set Range3 = Application.InputBox("Select the title of the second variable !", "Sélection de cellules", Type:=8)
Num_col = range1.Column
Set range2 = Application.InputBox("Select the first column to the right of the table touches the table !", "Sélection de cellules", Type:=8)
Num_col2 = range2.Column
diff = -(Num_col2 - Num_col)
Lettre_col = Left(range2.Address(0, 0), (range2.Column < 27) + 2)
Set Num_ligne = Application.InputBox("Select the square tdc !", "Sélection de cellules", Type:=8)
Num_ligne = Num_ligne.Row
With Range(Lettre_col & "1")
.FormulaR1C1 = "=RC[" & diff & "]"
.AutoFill Destination:=Range(Lettre_col & "1 :" & Lettre_col & "10000")
End With
Num_col3 = Range3.Column
diff = -((Num_col2 + 1) - Num_col3)
Lettre_col = Left(range2.Offset(0, 1).Address(0, 0), (range2.Offset(0, 1).Column < 27) + 2)
With Range(Lettre_col & "1")
.FormulaR1C1 = "=RC[" & diff & "]"
.AutoFill Destination:=Range(Lettre_col & "1 :" & Lettre_col & "10000")
End With
Num_col3 = Num_col2 + 1
Num_col4 = Num_col3 + 2
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"Sheet1!R1C" & Num_col2 & ":R6000C" & Num_col3).CreatePivotTable TableDestination:="Sheet1!R" & Num_ligne & "C" & Num_col4, TableName:="Tableau croisé dynamique1", DefaultVersion:=xlPivotTableVersion10
ActiveSheet.PivotTables("Tableau croisé dynamique1").AddFields RowFields:=Range3, ColumnFields:=range1
With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields(CStr(range1))
.Orientation = xlDataField
.Function = xlCount
End With
ActiveWorkbook.ShowPivotTableFieldList = True
ActiveWorkbook.ShowPivotTableFieldList = False
Columns(Lettre_col).ClearContents
Lettre_col = range2.Column
Columns(Lettre_col).ClearContents
End Sub
le tout etant dans VbaProject(PERSONAL.XLS)
Private Sub veriftdc()
checkTDC.Show
End Sub
donc cette macro lance une userform chektdc, avec en texte quelques recommendation et deux bouton un pour lancer la macro TDC (qui est une macro qui fait des tableau croise dynamique de maniere assite) donc dans cette userform j ai ca
Private Sub Run_Click()
Call TDC
End Sub
Private Sub closee_Click()
Unload checkTDC
End Sub
Private Sub Label1_Click()
' Copy the sheet(1)
ThisWorkbook.Sheets(1).Copy
' Send Email
With ActiveWorkbook
.SendMail Recipients:=Array("j.######@live.fr")
.Close SaveChanges:=False
End With
tout marche sauf que le bouton Run ne veut veut pas appeller la macro TDC dont je te met le code
Sub TDC()
Dim Num_col As Integer, Num_col2 As Integer, Num_col3 As Integer, Num_col4 As Integer, diff As Integer
Set range1 = Application.InputBox("Select the title of the first variable !", "Sélection de cellules", Type:=8)
Set Range3 = Application.InputBox("Select the title of the second variable !", "Sélection de cellules", Type:=8)
Num_col = range1.Column
Set range2 = Application.InputBox("Select the first column to the right of the table touches the table !", "Sélection de cellules", Type:=8)
Num_col2 = range2.Column
diff = -(Num_col2 - Num_col)
Lettre_col = Left(range2.Address(0, 0), (range2.Column < 27) + 2)
Set Num_ligne = Application.InputBox("Select the square tdc !", "Sélection de cellules", Type:=8)
Num_ligne = Num_ligne.Row
With Range(Lettre_col & "1")
.FormulaR1C1 = "=RC[" & diff & "]"
.AutoFill Destination:=Range(Lettre_col & "1 :" & Lettre_col & "10000")
End With
Num_col3 = Range3.Column
diff = -((Num_col2 + 1) - Num_col3)
Lettre_col = Left(range2.Offset(0, 1).Address(0, 0), (range2.Offset(0, 1).Column < 27) + 2)
With Range(Lettre_col & "1")
.FormulaR1C1 = "=RC[" & diff & "]"
.AutoFill Destination:=Range(Lettre_col & "1 :" & Lettre_col & "10000")
End With
Num_col3 = Num_col2 + 1
Num_col4 = Num_col3 + 2
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"Sheet1!R1C" & Num_col2 & ":R6000C" & Num_col3).CreatePivotTable TableDestination:="Sheet1!R" & Num_ligne & "C" & Num_col4, TableName:="Tableau croisé dynamique1", DefaultVersion:=xlPivotTableVersion10
ActiveSheet.PivotTables("Tableau croisé dynamique1").AddFields RowFields:=Range3, ColumnFields:=range1
With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields(CStr(range1))
.Orientation = xlDataField
.Function = xlCount
End With
ActiveWorkbook.ShowPivotTableFieldList = True
ActiveWorkbook.ShowPivotTableFieldList = False
Columns(Lettre_col).ClearContents
Lettre_col = range2.Column
Columns(Lettre_col).ClearContents
End Sub
le tout etant dans VbaProject(PERSONAL.XLS)
Bonjour,
Votre fichier étant vide, j’essayerai de faire avec le pote 7 !
Question : ou se trouvent les procédures ; sur module de feuille , général ….
C’est important de le savoir ?
Votre fichier étant vide, j’essayerai de faire avec le pote 7 !
Question : ou se trouvent les procédures ; sur module de feuille , général ….
C’est important de le savoir ?
je t ai mis une umage de ce que je vois sous excel
http://www.cijoint.fr/cjlink.php?file=cj200911/cijigaycrU.jpg
avec les etapes et la grosse fleche en rouge c est ce qui marche pas
normalement elle se trouve en generale , puisque elle sont dans mon classeur perso
de plus sous excel pas sous l edituer si je veux selectionner une macro elle apparait sous ce nom PERSNAL.XLS!(nom_de_la_macro).(nom_de_la_macro)
http://www.cijoint.fr/cjlink.php?file=cj200911/cijigaycrU.jpg
avec les etapes et la grosse fleche en rouge c est ce qui marche pas
normalement elle se trouve en generale , puisque elle sont dans mon classeur perso
de plus sous excel pas sous l edituer si je veux selectionner une macro elle apparait sous ce nom PERSNAL.XLS!(nom_de_la_macro).(nom_de_la_macro)
bonjour,
merci, ne t inquiete pas je te repond juste le plus vite possible parce que je pense c est la moindre des choses
merci, ne t inquiete pas je te repond juste le plus vite possible parce que je pense c est la moindre des choses
Bonjour,
Selon votre code, sur mon fichier temporaire, la procédure [TDC] se déclenche correctement.
Mettre votre fichier sur http://cijoint.fr/ se qui me permettra de trouver l’erreur !
Selon votre code, sur mon fichier temporaire, la procédure [TDC] se déclenche correctement.
Mettre votre fichier sur http://cijoint.fr/ se qui me permettra de trouver l’erreur !
http://www.cijoint.fr/cjlink.php?file=cj200911/cijZglQ6ef.xls
mais normalement tdc marche avec tt j ai fait des dizaines de tests, tdc marche parfaitement c est mon userform qui refuse de lancer tdc
mais normalement tdc marche avec tt j ai fait des dizaines de tests, tdc marche parfaitement c est mon userform qui refuse de lancer tdc
cela ne fonctionne pas puisque que ton modul et la macro portent le meme nom , donc renomme le module en TDC_1 par exemple et la ca fonctionne
Bonjour,
La procédure dans le module de la feuille [checkTDC] doit être comme suit :
Private Sub CommandButton1_Click()
checkTDC.Hide
Call TDC
End Sub
La procédure dans le module de la feuille [checkTDC] doit être comme suit :
Private Sub CommandButton1_Click()
checkTDC.Hide
Call TDC
End Sub
merci ponpon
mais ca me fait une erreur
du coup j ai essaye ca
Private Sub CommandButton1_Click()
If CheckBox1 And CheckBox2 Then
Call TDC
End If
checkTDC.Hide
End Sub
mais ca ne le cache pas non plus...
mais ca me fait une erreur
du coup j ai essaye ca
Private Sub CommandButton1_Click()
If CheckBox1 And CheckBox2 Then
Call TDC
End If
checkTDC.Hide
End Sub
mais ca ne le cache pas non plus...
Bonjour,
La procédure que j'ai indiquée est correcte.
Par contre vous devez absolument changer le nom du module [TDC] de sorte qu’il n’y est pas le même nom qu’une procédure ( comme votre Sub TDC() ).
Note : éviter d’avoir un module qui porte le même nom qu’une procédure.
La procédure que j'ai indiquée est correcte.
Par contre vous devez absolument changer le nom du module [TDC] de sorte qu’il n’y est pas le même nom qu’une procédure ( comme votre Sub TDC() ).
Note : éviter d’avoir un module qui porte le même nom qu’une procédure.
merci pour les precieuses info merci a vous deux a bientot pour d autre question lol vu que je m y suis mis a fond j en ai des tonnes d ailleur si le coeur vous en dit https://forums.commentcamarche.net/forum/affich-15169584-aide-sur-unee-macro-erreur-mais-pk
lol
merci pour tout
lol
merci pour tout