Visual Basic |
Bienvenue invité ( Connexion | Inscription )
Visual Basic |
31 Oct 2015, 11:43
Message
#1
|
|
Nouveau Membre Groupe : Membres Messages : 18 Inscrit : 15 Mar 2014 Membre no 189 751 |
Bonjour à tous,
Je suis à la fac et j'ai un cours d'informatique cette année, dans lequel on va devoir faire un projet avec VBA. J'ai Office 2016 et je n'arrive pas à utiliser VBA comme sur Windows. Dans Excel, je vais dans développeur, puis Visual Basic, mais je ne peux rien écrire. En plus de ça, les codes VBA sont tous écrits en colonne (une lettre par ligne) et impossible à modifier quand je prends des projets déjà faits. Quelqu'un pourrait-il m'éclairer ? Merci |
|
|
19 Jun 2016, 09:49
Message
#2
|
|
Macbidouilleur d'Or ! Groupe : Membres Messages : 2 306 Inscrit : 27 Jul 2008 Lieu : Besançon Membre no 118 630 |
Je parle de modifier mon fichier .xlam Aliboron. Tu parles aussi d'un .xlam ou autre ? Car pour les autres ça marche, il me demande si je veux enregistrer de manière classique.J'ai la version 15.23 sortie il y a 2 ou 3 jours je crois.
Et je ne savais pas que Libre Office faisait tourner des macros ? Et encore moins des VisualBasic ! Ce message a été modifié par Tom25 - 19 Jun 2016, 09:51. -------------------- |
|
|
19 Jun 2016, 13:17
Message
#3
|
|
Macbidouilleur d'Or ! Groupe : Membres Messages : 4 200 Inscrit : 1 Jan 2008 Lieu : Toulouse.cong Membre no 103 942 |
Je parle de modifier mon fichier .xlam Aliboron. Tu parles aussi d'un .xlam ou autre ? Car pour les autres ça marche, il me demande si je veux enregistrer de manière classique. J'ai la version 15.23 sortie il y a 2 ou 3 jours je crois. Il s'agit bien d'un .xlam. Mais en y revenant aujourd'hui, je vois ce que tu veux dire. Hier, j'avais laissé le classeur initial ouvert (donc pas seulement le projet VBA, mais aussi la feuille de calcul). Du coup, pas de souci pour l'enregistrer. Mais aujourd'hui, je constate ce que tu décris, puisqu'on n'a plus accès à la feuille de calcul (et donc plus au dialogue d'enregistrement). Même en passant par "Fenêtre" > "Afficher..." Faut que j'enquête ! Et je ne savais pas que Libre Office faisait tourner des macros ? Et encore moins des VisualBasic ! Pour ce qui est du VBA, il ne faut rien exagérer. Disons que ça permet vaguement de récupérer les macros VBA si elles ne sont pas trop élaborées (et on a un avertissement qui indique que toute modification ne pourra être enregistrée qu'au format OpenDocument). Mais, quand on connaît déjà les soucis de compatibilité Windows/Mac OS X en matière de VBA, on comprend bien que ça risque vite de coincer avec LibreOffice. LibreOffice a son propre langage de macros (LibreOffice Basic) mais permet aussi d'utiliser d'autres langages (Python, par exemple). -------------------- |
|
|
19 Jun 2016, 13:35
Message
#4
|
|
Macbidouilleur d'Or ! Groupe : Membres Messages : 4 200 Inscrit : 1 Jan 2008 Lieu : Toulouse.cong Membre no 103 942 |
.../... Faut que j'enquête ! Bon, visiblement, les .xlam étant par principe destinés à être en lecture seule, ce ne devrait pas fondamentalement être un problème. Mais quand même, quand on est en phase de développement ou de correction, ça peut être pratique. Grâce à Jon Peltier, voilà une solution simple de contournement. En collant ce petit bout de code dans le module, on peut déclencher l'enregistrement : Code Sub SaveMe() ThisWorkbook.Save End Sub Problème : cette macro est du coup également enregistrée dans le module, ce qui peut présenter des inconvénients (elle reste disponible pour un utilisateur éventuellement moins expérimenté). Contournement du contournement, en collant cette ligne dans la fenêtre "Exécution" on peut déclencher un enregistrement sans souci : Code Workbooks("ClasseurMacro.xlam").Save Voilà, voilà... Ce message a été modifié par Aliboron - 19 Jun 2016, 13:43. -------------------- |
|
|
19 Jun 2016, 18:11
Message
#5
|
|
Macbidouilleur d'Or ! Groupe : Membres Messages : 2 306 Inscrit : 27 Jul 2008 Lieu : Besançon Membre no 118 630 |
Merci de tes infos précieuses.
Code Sub SaveMe() ThisWorkbook.Save End Sub Donc je vais dans menu Outils -> Macro -> Macros… et je colle "SaveMe" et je clique "exécuter". C'est ça ? Ou alors, quand je lis ci-dessous, je colle ça "Workbooks("ClasseurMacro.xlam").Save" directement dans la fenêtre obtenu via menu Outils -> Macro -> Macros… et je n'ai pas besoin de coller le code que tu donnes dans le module ? en collant cette ligne dans la fenêtre "Exécution" on peut déclencher un enregistrement sans souci : Code Workbooks("ClasseurMacro.xlam").Save Voilà, voilà... Merci encore. Je vais faire 2 ou 3 tests, j'ai une sauvegarde de mon .xlam . Edit : Bon ben j'ai collé ta Procédure dans mon Module "ClasseurMacro.xlam" puis j'ai ouvert Outils -> Macro -> Macros… et j'ai collé "SaveMe". Ca a sauvegardé. Je ne comprends pas ce que tu appelles la fenêtre "Exécution" ? Ce message a été modifié par Tom25 - 19 Jun 2016, 18:18. -------------------- |
|
|
Nous sommes le : 31st May 2024 - 23:47 |