Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Word > VBA Word
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/11/2011, 11h06   #1
Nouveau Membre du Club
 
Inscription : février 2003
Messages : 164
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 164
Points : 30
Points : 30
Par défaut Cliquer sur OK dans Boite de dialogue

Bonjour,

j'ai crée une macro qui ouvre plusieurs fichiers et les modifie. Le problème que j'ai c'est qu'à chaque fois qu'un fichier s'ouvre, j'ai une boite de dialogue qui apparait et je suis obligé de cliquer sur OK.
______________________________________________________
Des Problèmes sont survenus pendant le chargement dans les domaines suivants :
_________________________________________________________
Fichier mangent : C:\css\pm.css
Fichier manquant : C:\css\halfmoontabs.css CNC

_________________________________________________________
OK-----------------------Annuler
___________________________________________________________


J'aimerais savoir comment faire pour que la macro clique directement sur le bouton OK.
Arsene12 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2011, 17h30   #2
Rédacteur/Modérateur
 
Avatar de Philippe JOCHMANS
 
Homme Philippe JOCHMANS
Développeur informatique
Inscription : mai 2005
Messages : 17 625
Détails du profil
Informations personnelles :
Nom : Homme Philippe JOCHMANS
Âge : 44
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Communication - Médias

Informations forums :
Inscription : mai 2005
Messages : 17 625
Points : 30 962
Points : 30 962
Envoyer un message via MSN à Philippe JOCHMANS Envoyer un message via Skype™ à Philippe JOCHMANS
Bonjour

Il faudrait que tu détailles ton code et le type de fichiers que tu souhaites modifier.

Philippe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
Si vous pensez commencer sans un livre, oublier : livres pour débuter
Vous pouvez consulter mes articles sur Access et PowerPoint
Le blog Office.

Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas.
Philippe JOCHMANS est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2011, 18h14   #3
Nouveau Membre du Club
 
Inscription : février 2003
Messages : 164
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 164
Points : 30
Points : 30
Bonsoir,

Les fichiers à ouvrir sont des fichiers .htm.

Et voici le code que j'utilise :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Dim FSO As New Scripting.FileSystemObject
Dim DossierSource As Scripting.Folder, SousDossier As Scripting.Folder
Dim fichier As Scripting.File    ' Set FSO = Scripting.FileAttribute
    Set DossierSource = FSO.GetFolder("C:\Users\Arsene\Desktop\Nouveau dossier")
    For Each fichier In DossierSource.Files
        Documents.Open FileName:=fichier.Path        
        Application.Run MacroName:="MaMacro"
    ChangeFileOpenDirectory "C:\Users\Arsene\Desktop\Nouveau dossier\"
    ActiveDocument.SaveAs FileName:= _
        fichier.Name + ".docx", FileFormat:= _
        wdFormatXMLDocument, LockComments:=False, Password:="", AddToRecentFiles _      
        :=True, WritePassword:="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts _
        :=False, SaveNativePictureFormat:=False, SaveFormsData:=False, _
        SaveAsAOCELetter:=False        
        ActiveDocument.Close        
    Next
Arsene12 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2011, 18h29   #4
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 343
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 343
Points : 29 254
Points : 29 254
Salut,

Ce n'est pas ce code qui affiche la boîte de dialogue, mais celui qui est probablement contenu dans "MaMacro".

Et je pense que ce que tu enregistres vient du Web. Ce qui manque sont les fichiers CSS.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2011, 18h51   #5
Nouveau Membre du Club
 
Inscription : février 2003
Messages : 164
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 164
Points : 30
Points : 30
La boite de dialogue s'affiche même lorsque j'ouvre le fichier sans faire de macro. Je pensai qu'on pouvait la fermer en tapant juste une ligne de code.
Arsene12 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2011, 19h03   #6
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 343
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 343
Points : 29 254
Points : 29 254
Salut,

S'il n'est pas généré par une macro, comment savoir quand il va apparaître et surtout avec quel processus.

Ce serait plus simple de créer les fichiers CSS manquants.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2011, 19h40   #7
Nouveau Membre du Club
 
Inscription : février 2003
Messages : 164
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 164
Points : 30
Points : 30
Bonsoir,

Impossible de créer les css manquants, car j'ai beaucoup trop de fichiers .htm. Les fichiers css sont absents, je dois faire avec, ou plutôt sans, je peux pas revenir en arrière maintenant. Je pense qu'il doit y avoir une solution simple à mon problème.
Arsene12 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2011, 19h55   #8
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 343
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 343
Points : 29 254
Points : 29 254
Salut,



Citation:
Je pense qu'il doit y avoir une solution simple à mon problème.
J'en doute pas.

Les CSS peuvent très bien ne rien contenir.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2011, 20h06   #9
Nouveau Membre du Club
 
Inscription : février 2003
Messages : 164
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 164
Points : 30
Points : 30
Bonsoir,

Si je dois modifier un par un mes fichiers, je vais perdre un temps fou. Je dois me débarrasser de la boite de dialogue en programmant un clic sur le bouton OK, sinon je suis bloqué.
Arsene12 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2011, 20h11   #10
Responsable Visual Basic
 
Avatar de bbil
 
Inscription : juin 2003
Messages : 11 773
Détails du profil
Informations personnelles :
Âge : 45
Localisation : France, Ariège (Midi Pyrénées)

Informations forums :
Inscription : juin 2003
Messages : 11 773
Points : 16 849
Points : 16 849
Envoyer un message via Skype™ à bbil
et elle fait quoi "MaMacro" ? tu as vraiment besoin d'ouvrir ces fichiers dans word ?
bbil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2011, 20h49   #11
Nouveau Membre du Club
 
Inscription : février 2003
Messages : 164
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 164
Points : 30
Points : 30
J'ai passé beaucoup de temps à la faire MaMacro, elle est longue et fait beaucoup de choses, et je suis bloqué juste à la fin, à la dernière ligne de code. J'ai pas de chance
Arsene12 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 00h37   #12
Rédacteur/Modérateur
 
Avatar de Sepia
 
Homme JF Jousseaume
Inscription : octobre 2007
Messages : 2 390
Détails du profil
Informations personnelles :
Nom : Homme JF Jousseaume
Âge : 48
Localisation : France

Informations professionnelles :
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2007
Messages : 2 390
Points : 3 356
Points : 3 356
Salut Arsene,

Citation:
Envoyé par Arsene12 Voir le message
J'ai pas de chance
Peut-être qu'il aurait fallu faire autrement et nous en parler avant aurait pu éviter ce problème. Mais maintenant que tu es là, on va voir comment t'aider (même si ton cas n'est pas le meilleur à suivre ).

Dans le temps des anciens (VB6), on utilisait SendKeys pour piloter les boîtes de dialogue, propriétaires et celles de Word. Ca fait un bail mais souvent ça continue à fonctionner pendant longtemps en VBA, essaie pour voir. De mon côté, je regarde si je n'ai pas un exemple tout fait, tout beau mais comme c'est dans les archives, c'est u boulot sur un disque de sauvegarde et ça peut être un peu long (de toute façon pas avant demain)

En attendant voici une rubrique du Réseau des Developpeurs M$ (MSDN, pour les intimes) sur le SendKeys

@+
Sepia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 06h06   #13
Nouveau Membre du Club
 
Inscription : février 2003
Messages : 164
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 164
Points : 30
Points : 30
Bonjour,
Merci beaucoup Sepia,
La méthode Senkeys est un peu compliquée pour moi qui n'est pas beaucoup d'expérience, je vais donc essayer de faire autrement. J'ai été voir si OpenOffice m'envoyait aussi une boite de dialogue à l'ouverture et il se trouve que non. De plus, si j'enregistre le fichier, le problème ne se pose plus à sa réouverture dans Word. La solution serait peut-être de programmer OpenOffice pour qu'il ouvre tous les fichiers de mon répertoire et qu'il les réenregistre.
Arsene12 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 19h13   #14
Rédacteur/Modérateur
 
Avatar de Sepia
 
Homme JF Jousseaume
Inscription : octobre 2007
Messages : 2 390
Détails du profil
Informations personnelles :
Nom : Homme JF Jousseaume
Âge : 48
Localisation : France

Informations professionnelles :
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2007
Messages : 2 390
Points : 3 356
Points : 3 356
Salut Arsene12,

Citation:
Envoyé par Arsene12 Voir le message
La solution serait peut-être de programmer OpenOffice pour qu'il ouvre tous les fichiers de mon répertoire et qu'il les réenregistre.
Oui si tu maîtrises mieux cet outil. Nous c'est plutôt Word () mais ce n'est pas l'outil qui compte, c'est que tu y arrives et si possible de façon réutilisable (pour toi ) mais aussi pour nous sur le forum

@+
Sepia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 19h22   #15
Rédacteur/Modérateur
 
Avatar de Sepia
 
Homme JF Jousseaume
Inscription : octobre 2007
Messages : 2 390
Détails du profil
Informations personnelles :
Nom : Homme JF Jousseaume
Âge : 48
Localisation : France

Informations professionnelles :
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2007
Messages : 2 390
Points : 3 356
Points : 3 356
Salut Arsene12,

Voici un autre lien d'exemple de SendKeys

@+
Sepia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 19h45   #16
Nouveau Membre du Club
 
Inscription : février 2003
Messages : 164
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 164
Points : 30
Points : 30
Bonsoir,

Je dois maintenant traduire le code que j'ai donné plus haut en langage OOO Basic (en éliminant la ligne : Application.Run MacroName:="MaMacro"). Ce code n'est pas long, mais j'ai peur de pas trouver la solution tout de suite
Dès que je trouve le code correspondant, je le poste, promis
Arsene12 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 20h44   #17
Responsable Visual Basic
 
Avatar de bbil
 
Inscription : juin 2003
Messages : 11 773
Détails du profil
Informations personnelles :
Âge : 45
Localisation : France, Ariège (Midi Pyrénées)

Informations forums :
Inscription : juin 2003
Messages : 11 773
Points : 16 849
Points : 16 849
Envoyer un message via Skype™ à bbil
Bonsoir,
Citation:
Envoyé par Arsene12 Voir le message
J'ai passé beaucoup de temps à la faire MaMacro, elle est longue et fait beaucoup de choses, et je suis bloqué juste à la fin, à la dernière ligne de code. J'ai pas de chance
Je suis content pour toi vu que ton code ait rétréci ..:


Citation:
Envoyé par Arsene12 Voir le message
Bonsoir,

Je dois maintenant traduire le code que j'ai donné plus haut en langage OOO Basic (en éliminant la ligne : Application.Run MacroName:="MaMacro"). Ce code n'est pas long, mais j'ai peur de pas trouver la solution tout de suite
Dès que je trouve le code correspondant, je le poste, promis
bbil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 21h42   #18
Nouveau Membre du Club
 
Inscription : février 2003
Messages : 164
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 164
Points : 30
Points : 30
Dans mon code, y'a une macro qui est incluse dans une autre macro, je travaille en faisant des poupées russes.
Application.Run MacroName:="MaMacro" : c'est cette macro qui est longue et qui fait 10 pages, c'est pour ça que j'ai pris soin de préciser que j'élimine cette ligne de code.
Arsene12 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2011, 22h03   #19
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 343
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 343
Points : 29 254
Points : 29 254
Salut,

C'est dans ces 10 pages que tu "appelles" la boîte de dialogue et pas dans les quelques lignes que tu nous a montrées.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2011, 05h35   #20
Nouveau Membre du Club
 
Inscription : février 2003
Messages : 164
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 164
Points : 30
Points : 30
Bonjour,

Je précise au passage que j'utilise Word 2007. Si vous voulez vérifier le problème que je rencontre, vous n'avez qu'à enregistrer cette page en "Page Web, Complète". Vous obtenez un fichier .htm + un dossier qui va avec. Jeter à la corbeille le fichier .htlm et le dossier suivra, puis aller dans la corbeille restaurer uniquement le fichier .htm. Ensuite ouvrez le fichier .htm avec Word et vous verrez une fenêtre apparaitre
Arsene12 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h45.


 
 
 
 
Partenaires

Hébergement Web