cs_Le Pivert
Messages postés7885Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention28 mars 2023137 5 sept. 2008 à 22:15
Je te remercie de tous ces conseils que je vais m'efforcer de mettre en pratique. J'en profite pour te féliciter pour ton dernier programme " Un graphique 3 D tout en mouvement" qui est réellement bluffant.
bigfish_le vrai
Messages postés1835Date d'inscriptionvendredi 13 mai 2005StatutMembreDernière intervention20 novembre 201313 5 sept. 2008 à 20:58
Un exemple de passage de parametre :
voici le code modifié de ton module1 :
'Solutions L Longre, mpfe
'"Suppression" (je mets des guillemets !) :
Sub CacheBOutils()
Dim CmdB As CommandBar
For Each CmdB In Application.CommandBars
CmdB.Enabled = False
Next CmdB
End Sub
'Résurrection:
Sub AfficheBOutils()
Dim CmdB As CommandBar
For Each CmdB In Application.CommandBars
CmdB.Enabled = True
Next CmdB
End Sub
'sélectionne une feuille si elle existe, la crée si elle n'existe pas
Sub SelectFeuille(Nom$)
On Error Resume Next
Worksheets(Nom).Select
If Err <> 0 Then Worksheets.Add.Name = Nom
End Sub 'fs
Sub Test(NumTest As Long)
SelectFeuille ("Table des " & NumTest)
End Sub
Sub Test_11()
SelectFeuille ("Presentation")
End Sub
apres cette modif pour activer les feuilles de test il suffit de le faire comme suit:
par exemple pour appeler le test 2 depuis le test 1 tu remplaces
test_2 par
test(2) 'la valeur entre parentheses sera passée a la sub Test qui elle meme la recuppere dans la variable NumTest
Et voila ! pas plus compliqué !
A+
bigfish_le vrai
Messages postés1835Date d'inscriptionvendredi 13 mai 2005StatutMembreDernière intervention20 novembre 201313 5 sept. 2008 à 20:39
Salut,
l'idée est bonne mais...
Excel est un tableur alors pourquoi utiliser des controles textbox dans les feuilles ? Cela aurais considerablement diminué la taille du fichier d'utiliser les cellules.
Apprend à boucler sur les controles cela te permetra de diminuer la taille du code.
Apprend à passer des valeurs en parametre à tes sub cela te permetra aussi de considerablement reduire le code.
Pourquoi ne pas generer, toujours dans la meme feuille, les differentes tables plutot que d'utiliser une feuille par table ?
cela aurait en plus l'avantage de ne pas etre limité et de pouvoir generer une infinité de table.
A+
cs_Le Pivert
Messages postés7885Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention28 mars 2023137 4 sept. 2008 à 15:35
NB: avant de cliquer sur un bouton, allez dans la table des 10 où tout est expliqué. En raison de la taille du fichier j'ai supprimé la table des 10, mais pas le code ce qui fait qu'il manque des boutons.Si vous voulez la faire fonctionner comme cela allez dans les feuilles 1 et 3 et supprimé Feuil11.CommandButton1.Enabled = True.
Excusez le contre temps
5 sept. 2008 à 22:15
5 sept. 2008 à 20:58
voici le code modifié de ton module1 :
'Solutions L Longre, mpfe
'"Suppression" (je mets des guillemets !) :
Sub CacheBOutils()
Dim CmdB As CommandBar
For Each CmdB In Application.CommandBars
CmdB.Enabled = False
Next CmdB
End Sub
'Résurrection:
Sub AfficheBOutils()
Dim CmdB As CommandBar
For Each CmdB In Application.CommandBars
CmdB.Enabled = True
Next CmdB
End Sub
'sélectionne une feuille si elle existe, la crée si elle n'existe pas
Sub SelectFeuille(Nom$)
On Error Resume Next
Worksheets(Nom).Select
If Err <> 0 Then Worksheets.Add.Name = Nom
End Sub 'fs
Sub Test(NumTest As Long)
SelectFeuille ("Table des " & NumTest)
End Sub
Sub Test_11()
SelectFeuille ("Presentation")
End Sub
apres cette modif pour activer les feuilles de test il suffit de le faire comme suit:
par exemple pour appeler le test 2 depuis le test 1 tu remplaces
test_2 par
test(2) 'la valeur entre parentheses sera passée a la sub Test qui elle meme la recuppere dans la variable NumTest
Et voila ! pas plus compliqué !
A+
5 sept. 2008 à 20:39
l'idée est bonne mais...
Excel est un tableur alors pourquoi utiliser des controles textbox dans les feuilles ? Cela aurais considerablement diminué la taille du fichier d'utiliser les cellules.
Apprend à boucler sur les controles cela te permetra de diminuer la taille du code.
Apprend à passer des valeurs en parametre à tes sub cela te permetra aussi de considerablement reduire le code.
Pourquoi ne pas generer, toujours dans la meme feuille, les differentes tables plutot que d'utiliser une feuille par table ?
cela aurait en plus l'avantage de ne pas etre limité et de pouvoir generer une infinité de table.
A+
4 sept. 2008 à 15:35
Excusez le contre temps