vba excel

  • Initiateur de la discussion naim 
  • Date de début
N

naim 

Guest
je viens de debuter avec vba excel.
j'ai crée une application consistant en classeur avec diverses feuilles.

j'ai crée des liens entre feuilles avec une page index pour y accéder.

le programme est comme suit

Private Sub Workbook_Open()
Sheets("index").Activate
Dim Mbar As CommandBar
For Each Mbar In Application.CommandBars
If Mbar.BuiltIn = True Then
Mbar.Enabled = False
End If
Next
Application.DisplayStatusBar = False
Application.DisplayFormulaBar = False

With ThisWorkbook.Worksheets("index")
.ScrollArea = .UsedRange.Address
End With

End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Dim Mbar As CommandBar
For Each Mbar In Application.CommandBars
If Mbar.BuiltIn = True Then
Mbar.Enabled = True
End If
Next
Application.DisplayStatusBar = True
Application.DisplayFormulaBar = True

With ActiveWindow
.DisplayGridlines = False
.DisplayHeadings = False
.DisplayHorizontalScrollBar = False
.DisplayVerticalScrollBar = False
.DisplayWorkbookTabs = False
End With

End Sub

Et pour chaque feuille j'ai introduit

Private Sub Worksheet_Activate()

Worksheets("bangladesh").ShowDataForm

End Sub

le problème c'est que quant j'envoi par mail le fichier excel pour l'utilisation
sur un autre Pc les macros vba précités ne demarrent pas.

Merci de me dire SVP quoi faire.

Sincères salutation.
 
D

Dan

Guest
Bonjour Naim,

Sur l'autre PC, vérifie d'abord si l'alerte macro n'est pas activée en procédant comme suit :

Menu outils -> options -> onglet général -> "activer l'alerte macro".

Si l'alerte est activée, décoche la case "activer l'alerte macro" et refais un essai.

@+

Dan
 
R

romfret

Guest
bjr naim, dan ; le forum,


Je voulais rajouter qu'il fallait que tes fichiers soient dans le meme chemin ex : c:\documents and settings\machin\bureau\repertoir\sous repertoire\le fichier.xls
Il faut appliquer le meme chemin !!


voila , je crois que tu m'a compris !

@+, romfret
 
N

naim 

Guest
Bonjour Dan,


Merci beaucoup pour votre réponse.

J'ai procéde comme indiqué, mais en vain.

Je travaille avec excel 2002(10.2614.2615) version anglaise.

Pour le chemin aussi j'ai place le fichier xls sur desktop comme sur mon pc.
mais rien.

Y a-t-il une instruction en vba pour décocher la case "activer l'alerte macro"
automatiquement? (je nevois pas ou est cette commande dans le menu)

Merci et Sincères et amicales salutations.
 
@

@Christophe@

Guest
Bonjour Naim

Bon voila ce que tu dois faire,

Tu ouvres excel, pas ton fichier, simplement excel, tu fais ensuite Menu OUTILS, MACRO, SECURITE et tu choisis le NIVEAU FAIBLE

Alors tu n'auras pas de message d'alerte, et la macro sera exécuté automatiquement

Si tu mets NIVEAU MOYEN, tu auras un message d'alerte avec la possibilité d'accepter ou de refuser la macro

Si tu mets NIVEAU HAUT, ce que tu as d'activé maintenant, alors il ouvre le fichier sans ouvrire les macro

Voila pour ta solution

Bonne journée

@Christophe@
 
D

Dan

Guest
Naim,

la solution que je t'ai proposée se trouve dans Excel 97. Je n'ai pas Excel 2002 mais essaie ce que Christophe viens de proposer, je pense que c'est la même chose mais en tout cas adapté à ta version.

@+

Dan
 
N

naim 

Guest
Salut à tous,

Rien de recommandé ne marche.

Pour plus information, je joins fichier.

Est ce qu'il 'y a pas une commande vba à actionner pour que cela puisse

marcher sur un autre Pc.

Remerciements.
 

Pièces jointes

  • mysheet.xls
    33.5 KB · Affichages: 232
@

@+Thierry

Guest
Hello Naim, Romfret, Da, @Christophe@

Ici ton truc marche (Win NT / Office Pro 2000) Sécurité Moyenne...

Mais bon, comme je disais à Simon l'autre jour Lien supprimé d'ailleurs il ne m'a pas répondu le bougre... Donc je disaisqu'il n'est pas recommandé d'utiliser ces possibilités sur des fichiers diffusés en multiples Users, au risque de laisser un utilisateur novice complètement coincé sans au cune barre de menu dans son Excel....

En plus Naim ton appli est incomplete, c'est bien beau de vouloir faire "pro" en masquant tout... Mais alors au minimum on prévoit la sortie une fois que tu as tout masqué... Car là où c'est ALT F4 où c'est la Croix... Et si le user à d'autres classeurs ouverts c'est très gentil pour eux !

Et le "With ActiveWindow" dans "Workbook_BeforeClose" ne sert à rien (Instructions propres au classeur).

Bon après midi
@+Thierry
 
N

naim 

Guest
Cher Thierry,

Merci pour la réponse qui m'a fait agréalement sourire pour "pro" et pour 
l'inattetion soulignée.

Pourriez vous SVP m'indiquer comment prévoir la sortie une fois que tout est  masqué.

Par ailleurs, je 'ai pas encore de réponse pour mon principale problème qui  est de faire tourner l'application sur un autre Pc.

Sincères Remerciements.

naim
 
D

Dan

Guest
Naim,

Apparement ton fichier fonctionne aussi sous excel 97. Je viens de faire l'essai.
Pour ce qui est de ton principal problème, je pense que tu devrais procéder par étape.

Essaie d'abord d'ouvrir ton fichier sans activer tes macros et enlever les barres de commandes.
Après fait tourner tes macros pas à pas.

@+
Dan
 

Discussions similaires

Réponses
2
Affichages
467

Statistiques des forums

Discussions
312 831
Messages
2 092 579
Membres
105 456
dernier inscrit
fabienlaporte081