Soucis VBA sur Excel 2010 - VB/VBA/VBS - Programmation
Marsh Posté le 25-04-2012 à 22:11:31
Mon script est le suivant
Private Sub Workbook_Open()
Dim i As Integer
For i = 1 To Worksheets.Count
If Worksheets(i).Name <> "Synthèse" Then
With Worksheets(i)
.EnableAutoFilter = True
.EnableOutlining = True
.protect Contents:=True, Password:="llcl", UserInterfaceOnly:=True
End With
Else
Worksheets(i).unprotect Password:="llcl"
End If
Next i
Application.Calculation = xlAutomatic
AddIns("Utilitaire d'analyse" ).Installed = True
End Sub
La macro bog à la dernière ligne
"AddIns("Utilitaire d'analyse" ).Installed = True"
=> Elle marchait parfaitement sous Excel 2003
=> cette commende n'exsite-t-elle plus sous Excel 2010 ?
Merci pour votre aide, je vais y passer la nuit
Marsh Posté le 26-04-2012 à 07:16:24
Bonjour,
essaye comme ça :
Code :
|
Edit : si tu es en 64 bits, c'est peut-être ANALY64.XLL, à voir.
Marsh Posté le 26-04-2012 à 09:29:32
Salut, ça marche
=> Tu es un chef
=> j'aurai juste besoin de l'explication de la ligne "Dim cp As AddIn"
Que fait cette fonction stp car je ne comprends pas tout
Merci d'avance pour ton aide
Marsh Posté le 26-04-2012 à 10:03:28
tchauoui a écrit : Salut, ça marche |
Dim cp As AddIn => tu déclares une variable "complément"
ensuite : For Each cp In AddIns => tu parcoures la collection des compléments pour trouver celui que tu veux
Une fois que tu l'as trouvé, tu l'installes.
C'est une macro complémentaire.
Marsh Posté le 26-04-2012 à 10:31:37
Parfait => c'est très clair
Merci beaucoup !!
J'ai une autre macro qui met à jour des graphique à partir d'une source de données
=> La macro bog au niveau ce dessous et je n'arrive pas à la régler
Application.Run "ImportCells"
Voic le script
Sub Graphiques()
Rem feuille de graphes résultats: on raccourci les sélections de mensuel et linéarisé
Sheets("Graphiques" ).Activate
Range("AH26:AS26,AH30:AS30,AH34:AS34,AH39:AS39,AH41:AS43" ).Select
Application.Run "ImportCells"
Call unprotect
'-------------------------------------------------------------------------------------------
Rem Chiffre d'Affaires Hors TGAP et Hors Concessions année n Mensuel 2010
graf = "Graphique 1"
serie = 2
lig = 22
coldeb = 34
Rem colonne décembre présente donc + nb mois
colfin = coldeb + Range("B2" ).Value - 1
test = fonction_bonne_selec(graf, serie, lig, coldeb, colfin)
Rem ROC mensuel année n
graf = "Graphique 2"
serie = 2
lig = 26
coldeb = 34
Rem colonne décembre présente donc + nb mois
colfin = coldeb + Range("B2" ).Value - 1
test = fonction_bonne_selec(graf, serie, lig, coldeb, colfin)
Rem ROC taux CA année n
graf = "Graphique 2"
serie = 4
lig = 41
coldeb = 34
Rem colonne décembre présente donc + nb mois
colfin = coldeb + Range("B2" ).Value - 1
test = fonction_bonne_selec(graf, serie, lig, coldeb, colfin)
Rem RNPG mensuel année n
graf = "Graphique 4"
serie = 5
lig = 30
coldeb = 34
Rem colonne décembre présente donc + nb mois
colfin = coldeb + Range("B2" ).Value - 1
test = fonction_bonne_selec(graf, serie, lig, coldeb, colfin)
Rem RNPG taux CA année n
graf = "Graphique 4"
serie = 1
lig = 42
coldeb = 34
Rem colonne décembre présente donc + nb mois
colfin = coldeb + Range("B2" ).Value - 1
test = fonction_bonne_selec(graf, serie, lig, coldeb, colfin)
Rem EBITDA mensuel année n
graf = "Graphique 3"
serie = 2
lig = 34
coldeb = 34
Rem colonne décembre présente donc + nb mois
colfin = coldeb + Range("B2" ).Value - 1
test = fonction_bonne_selec(graf, serie, lig, coldeb, colfin)
Rem EBITDA taux CA année n
graf = "Graphique 3"
serie = 4
lig = 43
coldeb = 34
Rem colonne décembre présente donc + nb mois
colfin = coldeb + Range("B2" ).Value - 1
test = fonction_bonne_selec(graf, serie, lig, coldeb, colfin)
'---------------------------------------------------------------------------------------------
Rem graphe CA
graf = "Graphique 1"
minus = "alexminusCA"
maxus = "alexmaxusCA"
exe = reduit_echelles(graf, minus, maxus)
Rem graphe ROC
graf = "Graphique 2"
minus = "alexminusROC"
maxus = "alexmaxusROC"
minussec = "alexminustauxROC"
maxussec = "alexmaxustauxROC"
exe = reduit_echelles(graf, minus, maxus)
exe = reduit_echelles_sec(graf, minussec, maxussec)
exe = ValeurGraph(graf)
Rem graphe EBITDA
graf = "Graphique 3"
minus = "alexminusEBITDA"
maxus = "alexmaxusEBITDA"
minussec = "alexminustauxEBITDA"
maxussec = "alexmaxustauxEBITDA"
exe = reduit_echelles(graf, minus, maxus)
exe = reduit_echelles_sec(graf, minussec, maxussec)
exe = ValeurGraph(graf)
Rem graphe RNPG
graf = "Graphique 4"
minus = "alexminusRNPG"
maxus = "alexmaxusRNPG"
minussec = "alexminustauxRNPG"
maxussec = "alexmaxustauxRNPG"
exe = reduit_echelles(graf, minus, maxus)
exe = reduit_echelles_sec(graf, minussec, maxussec)
exe = ValeurGraph(graf)
Call protect
Range("D12" ).Select
End Sub
Aurais-tu une idée stp ?
Marsh Posté le 26-04-2012 à 10:43:45
Application.Run "ImportCells" appelle une macro ImportCells.
Si ça ne fonctionne pas, c'est qu'elle ne doit pas être dans le fichier.
Essaye de remplacer par Call ImportCells mais ça m'étonnerais que ça marche
Marsh Posté le 26-04-2012 à 11:11:25
Ok, j'ai essayé
=> Effectivement ça ne marche pas
=> Il met le message d'erreur suivant
"Erreur de compilation"
"Sub ou fonction non définie"
Si ça ne fonctionne pas, c'est qu'elle ne doit pas être dans le fichier
=> Qu'est ce qui n'est pas dans le fichier
=> Je ne comprends pas bien ce que cela veut dire
Merci pour ton aide
Marsh Posté le 26-04-2012 à 11:25:33
vave a écrit : Application.Run "ImportCells" appelle une macro ImportCells. |
Est-ce que dans ton fichier tu as une macro ImportCells ?
Code :
|
Tu n'as pas la possibilité de demander à celui qui a fait la macro ?
Marsh Posté le 26-04-2012 à 12:20:47
Salut, une remarque sur l'utiltaire d'analyse :
L'utilitaire d'analyse ( ATP ) voit ses fonctions intégrées en natif à partir d'Office 2007
voir http://support.microsoft.com/kb/912719/en-us
ainsi que http://www.rondebruin.nl/atp.htm
et http://www.dicks-blog.com/archives [...] in-part-1/
Marsh Posté le 25-04-2012 à 22:08:17
Bonsoir à tous,
J'ai de gros soucis et je suis vraiment mal avec mes macro sur Excel 2010
Ces macro ont initialement été développées sous Excel 2003
=> J'ai migrée sous Excel 2010 aujourd'hui
A l'ouverture de mon fichier .xlsm j'ai le message suivant :
"Erreur d'execution '9'
"L'indice n'appartient pas à la sélection'
=> J'ai uniquement fait un double clique pour ouvrir mon fichier
Quelqu'un a-t-il une idée,je suis ne période d'essai et mon bosse ne va pas aimer si je ne trouve pas de solution
Merci d'avance pour votre aide