Accueil > Forum > > > > mise à jour classeur depuis un classeur fermé
mise à jour classeur depuis un classeur fermé
mardi 13 mars 2007 à 18:45:51 |
mise à jour classeur depuis un classeur fermé

jerjou
|
Salut à tous,
J'ai 2 classeurs xls: A = classeur source fermé. B = classeur ouvert.
J'ai déjà un bout de code qui fonctionne pour importé des données dans le classeur B sans ouvrir le classeur A. Voir code ci-dessous *********************************** Sub test() GetValuesFromAClosedWorkbook "C:\", "classeurA.xls", "Clients", "A1:H30" End Sub
Sub GetValuesFromAClosedWorkbook(fPath As String, _ fName As String, sName, cellRange As String) With ActiveSheet.Range(cellRange) .Formula = "='" & fPath & "\[" & fName & "]" _ & sName & "'!" & cellRange .Value = .Value End With End Sub ***********************************
1- Peut-on importer les données uniquement à la première ouverture du jour du classeur? Celui-ci étant en accès partagé je ne veux pas qu'il soit mis à jour à chaque ouverture. (trop lourd et long) 2- Depuis le classeur B ouvert je voudrais importer les commentaires des cellules du classeur A qui est fermé et que je ne veux pas ouvrir. Une solution SVP?
Merci d'avance pour votre aide. Jerjou
|
|
mercredi 14 mars 2007 à 08:05:13 |
Re : mise à jour classeur depuis un classeur fermé

MrOsmose
|
Je ne sais pas si il y a moyen directement de tester le fait que le fichier ai déja été ouvert ce jour... par contre tu peux passer par une feuille "cachée" qui contiendrait tes données : A chaque ouverture du fichier, tu éxecute une macro qui se présenterait comme : '1 je choisis et retire le tag "caché" de la feuille cachée Sheets('FeuilleCachée').SelectSelectedSheet.Hidden= false '2 si la date enregistrée n'est pas celle du jour if cells(1,1) <> DateTime.Date() '3 execution de la macro complète 'ici, ton code... ...
'4 j'enregistre la date d'aujourd'hui Sheets('FeuilleCachée').Select Cells(1,1).Select SelectedCells.Value = DateTime.Date() end if '5 je recache ma feuille. SelectedSheet.Hidden = true PS : Ceci est un code "de principe" je ne suis plus sûr des noms exacts des fonctions... il me semble que c'est ca, et ca devrait t'aider a mettre en oeuvre la solution avec un ptit peu de recherche ;) en esperant que ca t'aide a faire ce que tu désire ( --> réponse acceptée? )
|
|
mercredi 14 mars 2007 à 15:37:10 |
Re : mise à jour classeur depuis un classeur fermé

jerjou
|
Bjr MrOsmose,
Tout d'abord merci de l'interet porté à ma requete.
Je ne suis pas certains que ton code réponde à ma demande, peut-être me suis-je mal exprimé:
J'ai un classeur sur un serveur qui est consultable par l'ensemble de mes collaborateurs. Je souhaite qu'une macro soit effectuée uniquement à la première ouverture du classeur chaque jour (ou encore mieux, une fois par jour à une heure donnée sans que le classeur ne soit ouvert!). Si le classeur est ouvert plusieurs fois la même journée je ne veux pas que la macro soit effectuée à chaque ouverture (trop lourd). J'espère avoir été plus clair. As-tu une idée pour l'autre point de ma demande: 2- Depuis le classeur B ouvert je voudrais importer les commentaires des cellules du classeur A qui est fermé et que je ne veux pas ouvrir. Une solution SVP?
Merci encore, Jerjou
|
|
mercredi 14 mars 2007 à 17:45:40 |
Re : mise à jour classeur depuis un classeur fermé

MrOsmose
|
Si tu veux faire une MAJ d'un classeur excel sans rien ouvrir, je te conseille de passer par une solution de programmation externe (VStudio 2005 express? avec .net, tu peux accéder a un tableau excel comme si c'etait une source SQL)
Sinon, le code que je te propose serait a executer a chaque ouverture, oui, MAIS : - si le classeur n'a pas encore été ouvert, il executera la totalité - si le classeur a déja été ouvert, il n'aura executé que 3 actions : afficher la page "Feuille cachée", tester la valeur de la date, cacher la "Feuille cachée" Ce qui est minime en terme d'execution.
Si tu ne veux vraiment executer qu'une mise a jour (ou une modification quelconque) qu'une seule fois par jour, je te conseillerai en effet plutot la premiere solution (Visual Studio 2005 Express, qui a l'avantage d'etre gratuit)
Pour ta seconde question, je ne sais pas si il est possible d'effectuer des imports depuis un fichier non ouvert, et sans l'ouvrir dans la macro... je ne pense pas qu'on puisse faire une extraction de donnée directement depuis un fichier fermé
|
|
mercredi 14 mars 2007 à 18:04:21 |
Re : mise à jour classeur depuis un classeur fermé

jerjou
|
Merci, Je vais essayer ton code pour voir ce que ça donne. Pour la seconde question, le code suivant permet de récuperer des données (valeur des cellules) dans un classeur fermé (j'ai testé ça fonctionne), mais je bute pour récuperer aussi les commentaires. Sub test() GetValuesFromAClosedWorkbook "C:\", "classeurA.xls", "Clients", "A1:H30" End SubSub GetValuesFromAClosedWorkbook(fPath As String, _ fName As String, sName, cellRange As String) With ActiveSheet.Range(cellRange) .Formula = "='" & fPath & "\[" & fName & "]" _ & sName & "'!" & cellRange .Value = .Value End With End Sub
Merci et @ bientôt
|
|
Cette discussion est classée dans : string, jour, classeur, fermé, cellrange
Répondre à ce message
Sujets en rapport avec ce message
Problèmes macros vba [ par Aldigo ]
Bonjour,J'ai trois questions ( problèmes surtout! ) :- à partir d'un classeur ouvert comment puis-je y importer le contenu d'une colonne d'un classeur
Suppression Alerte Mise à Jour des Liaisons [ par homere47 ]
Dur Dur D'être programmeur en VBARe-probléme Dans un classeur Excel j'ai des liaisons avec d'autres classeurs (pour mise à jour de formules)Comment s
Message de liasons entre classeur a l'ouverture d'un classeur [ par olivier857 ]
Slt,j'ai fait une macro qui permet d'ouvrir un classeur excell et je voudrai savoir si il est possible d'y ajouter du code qui permettrai d'eviter un
référence à classeur excel fermé en vba [ par rosenfel ]
Bonjour, je sais comment faire référence sous excel à un classeur fermé. Néanmoins, en VBA, je n'arrive pas à accéder à des valeurs de classeurs fermé
reupération données dans classeur fermer [ par souk69 ]
Bonjour, j'ai un ti probleme qui est le suivant...Alors je sohaite recuperer des données dans un classeur fermé et j'ai taper le code ci dessous, le p
Acceder à un champ recordset paramétré [ par jyvaut75 ]
Bonjour,Dans une appli en cours de développement, je créé une table dont les noms de champ peuvent varier. J'explique déjà cette partie: je rentre une
Mise à jour (module) de Macro [ par xyzers ]
Bonjour à tous,Actuellement je mets régulièrement à jour une macro (amélioration, debug, ajout de fonctionnalité).Le problème est que je dois la copie
mise à jour d'un classeur [ par epaminondas ]
Bonjour, Je suis sur un proje
Mail automatique dans classeur excel fermé [ par Yrem ]
Bonjour A partir d'un fichier excel fermé je veux envoyer des mails via lotus notes à differentes personnes. Les dates d'envoi sont dans des cellules
[déplacé VB6 -> VBA] Macro de mise à jour d'un classeur [ par scriboull ]
bonjour, j'ai un classeur de base, je reçois des données non triées et j'aimerai créer une macro afin de mettre à jour mon classeur : voici mon class
Livres en rapport
|
Derniers Blogs
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 [HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article par Gio [WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz
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
|