Accueil > Forum > > > > Enregistrment feuille excel en VBA
Enregistrment feuille excel en VBA
dimanche 2 décembre 2007 à 21:58:50 |
Enregistrment feuille excel en VBA

vialatte69
|
Bonjour, Je cherche à enregistrer une feuille excel sans enregistrer le fichier complet, ceci en VBA. En fait je souhaite éviter l'enregistrement complet de mes macros, ceci prenant trop de temps. En vous remerciant par avance.
|
|
lundi 3 décembre 2007 à 00:39:38 |
Re : Enregistrment feuille excel en VBA

caco64
|
Un truc dans le genre :
Sub sauve_feuil_xls()
Dim xlapp As Excel.Application Dim adr_rep As String, nom_fichier As String Dim adr_fichier As String, adr_enr As String Dim classeur_a_enr As Workbook Dim feuille_a_enr As Worksheet Dim Nomfeuille As String
Set xlapp = New Excel.Application 'indiquer l'adresse du répertoire adr_rep = ThisWorkbook.Path & "\" 'indiquer nom du fichier excel nom_fichier = "vb_test.xls" 'adresse du fichier adr_fichier = adr_rep & nom_fichier Set classeur_a_enr = xlapp.Workbooks.Open(adr_fichier) 'choisir la feuille souhaitée par son n° (ou son nom) Set feuille_a_enr = classeur_a_enr.Sheets(1) Nomfeuille = feuille_a_enr.Name adr_enr = classeur_a_enr.Path & "\" _ & Left(nom_fichier, Len(nom_fichier) - 4) _ & "_" & Nomfeuille & ".xls" feuille_a_enr.SaveAs Filename:=adr_enr, FileFormat:=4 Set feuille_a_enr = Nothing classeur_a_enr.Close savechanges:=False Set classeur_a_enr = Nothing Set xlapp = Nothing End Sub
La haine aveugle n'est pas sourde
|
|
lundi 3 décembre 2007 à 14:03:57 |
Re : Enregistrment feuille excel en VBA

vialatte69
|
Bonjour,
En fait je me suis mal exprimé, je souhaitais enregistrer ma feuille excel dans le même classeur avec le même emplacement tout en conservant mes macros.
J'ai une base de données que je souhaite sauvegarder régulièrement, sauf que la sauvegarde prend du temps compte tenu qu'elle enregistre également mes macros.
Et je sais qu'à l'usage, ceux qui l'utiliseront auront du mal à le faire trop souvent.
Je te remercie quand même pour ton aide...Ton code ne sera pas perdu.
Merci
|
|
lundi 3 décembre 2007 à 22:57:16 |
Re : Enregistrment feuille excel en VBA

caco64
|
Je ne sais pas ce qui prend du temps dans un enregistrement, mais je suis un peu étonné que ce soit les macros. Les macros, ce n'est jamais que quelques lignes de code, comparé à des centaines (milliers ?) de lignes remplis de formule, voire des graphiques, j'aurais plutôt pensé que les macros ne pèsent pas très lourd.
Quoi qu'il en soit, l'enregistrement du classeur sans les fichiers bas, je connais pas.
Bon courage.
La haine aveugle n'est pas sourde
|
|
mardi 4 décembre 2007 à 13:28:49 |
Re : Enregistrment feuille excel en VBA

vialatte69
|
Bonjour,
En reprenant ton code, je me suis demandé si je ne pouvais pas pointé mon nouvel enregistrement sur mon propre fichier et la propre feuille que je dois enregistrer.
Le problème c'est que évidemment je suis alors en lecture seule.
Penses tu qu'il y a possiblité de forcer la main afin de passer ce verrou et écraser ma feuille source? (tout en conservant le reste)
En fait pour faire suite à ta remarque, je pense que ce sont mes Userform qui m'alourdissent l'enregistrement (j'en ai une soixantaine et aucun graphique)
Merci pour ton aide...Sinon merci quand même.
|
|
mardi 4 décembre 2007 à 22:10:47 |
Re : Enregistrment feuille excel en VBA

caco64
|
Pour moi, le fichier xls est un tout indivisible du point de vue de l'enregistrement. Lorsque tu utilises save as, tu peux n'enregistrer qu'une feuille parce que tu crées un nouveau fichier dont tu peux définir les éléments.
Mais, il n'y a pas possibilité, à ma connaissance, d'enregistrer des feuilles ou des macros à la carte.
Quant à ta question sur le lecture seule, je ne sais pas te répondre précisément. Mais je ne vois pas la possibilité d'écraser un fichier source sur lequel tu travailles...
Pas très optimiste tout ça... A mon sens, la seule solution c'est de séparer les données contenues dans tes feuilles et les user form. Pour cela, tu as un fichier qui contient les données, et un fichier .bas que tu contrôles dans un projet vb à part (voire un 2° fichier excel) qui contient tes user form et qui récupère les valeurs dans le premier fichier. Tu n'as qu'à gérer l'enregistrement du fichier 1 qui sera très léger. Plus facile à dire qu'à faire.
La haine aveugle n'est pas sourde
|
|
mardi 4 décembre 2007 à 22:25:17 |
Re : Enregistrment feuille excel en VBA

vialatte69
|
L'idée est en fait très bonne, et pas si difficile à mettre en oeuvre...Juste un peu fastidieuse, mais je vais m'y atteler. Comme quoi un échange permet parfois de sortir la tête du guidon. En te remerciant encore.
|
|
Cette discussion est classée dans : vba, enregistrer, excel, feuille, enregistrment
Répondre à ce message
Sujets en rapport avec ce message
[VBA] enregistrer une feuille excel dans une feuille Word [ par pedrold75 ]
Bonjour,J'ai une feuille excel avec des tableaux et des graphiques et je souhaiterais que cette feuille s'enregistre sous Word lorsque l'on click sur
Filtre auto vba 6.3 Excel 2007 [ par helpvb ]
Bonjour J aurais besoin du code vba6.3 afin d'activer un filtre sur la 1ere ligne de ma feuille Excel 2007 Je précise cette feuille est protégée et l
Excel VBA - Proprièté "Visible" pour "Worksheet" [ par JM247L ]
Bonjour,Il est des jours ou rien ne va ... comme on le souhaiteraitJ'ai une application sous excel dans laquelle je gère des tables dans une feuille c
mise en forme conditionnel dans excel avec vba [ par caloumaya ]
Bonjour,Je craque complètement.Je bidouille avec excel et vba un planning.Sur ma feuille 1 j'ai un tableau avec les types d'absence (CA, CE, AT.....)
enregistrer uniquement une feuille de donnés excel dans un autre fichier excel [ par duquenoy13 ]
Bonjour à tousje voudrais enregistrer uniquement une feuille de mon classeur dans un autre fichier excel dont on me demandera le nom et l'emplacement.
VBA - Excel - Déterminer les numéros de ligne et colonne max) d'une feuille excel [ par jax54000 ]
Bonjour,Via VBA je souhaite détérminer, pour une feuille excel, les numéros de la dernière ligne et de la dernière colonne utilisées (de cette feuille
Comment peut-on travailler sur un fichier csv importer via le net ? [ par Rozzi ]
Bonjour, Je suis jeune étudiant débutant en VBA Excel qui commence à bosser sur le Projet. En effet, ce projet a pour objectif de tester la maitrise
Excel: protéger des cellules non vides par VBA [ par elge64 ]
Bonjour, tout le monde.Je recherche un bout de VBA me permettant de sélectionner toutes les cellules non vides d'une feuille Excel pour les verrouille
defilement feuilles excel vba [ par Mitchouboy33 ]
bonjour à tous, voila j'ai un problème dans un de mes codes sous vba, je crée une base de données avec une feuille excel choisie au démarrage. Cette f
convertion 2003-2000 vba recherche de feuille excel [ par jerem5252 ]
Bonjour à tous,j ai un prob avec une partie de code lorsque je passe de excel 2003 à 2000.Dim strmessage As String Dim i As Long Set fs =
Livres en rapport
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|