Bonjour à tous,
je cherche une solution pour le problème suivant :
J'ai un fichier Excel sur l'ordinateur un peu complexe, avec des calculs, un tableau croisé dynamique etc. Les données sont sur une feuille, les calculs et rapports sur d'autres feuilles.
J'entre fréquemment des données grâce à mon PDA (PocketPC), mais cette version allégée d'Excel (pocketexcel) ne gère ni les formules complexes (recherchev( ) ) ni les TCD et encore moisn les graphiques. Actuellement, je synchronise mon PDA à mon PC en copiant le fichier du PC vers le PDA (pas de problème pour ça) puis une fois que j'ai entré quelques données, je renvoie ce fichier vers le PC, qui du coup se retrouve avec une version super allégée, juste les données brutes. Il faut alors que je les recopie à la main dans la feuille du fichier excel du PC qui contient toutes les formules et claculs.
J'ai fait deux macros pour que le fichier du PC crée une version allégée ne contenant que les données (que j'enverrai sur le PDA par mes propres moyens). Et qu'ensuite, le fichier Excel du PC sache lire les données du fichier allégé du PDA pour mettre à jour sa propre feuille de données.
Est-ce clair ou pas du tout ?
Autant dire que je ne suis ni un professionnel de la programmation, ni un esthète des lignes de code, je connais tout juste les rudiments de VBA que j'ai appris sur le tas en analysant des macros.
J'ai mis en pièce jointe un fichier ZIP contenant un exemple de ces deux fichiers. Celui du PC s'appelle flyPC.xls et contient les données dans une feuille, les calculs dans l'autre. Celui destiné au PDA flyPDA.xlsne contient que les données destinées à être renvoyées dans le PC.
J'ai fait deux macros, la première syncFLYout() qui exporte la feuille données de flyPC.xls vers un fichier flyPDA.xls, et une seconde macro suncFLYin() qui réimporte les données de flyPDA.xls dans la feuille "données" de flyPC.xls
Ma question : comment éviter que syncFLYout( ) ne me pose pas la question : VOULEZ-VOUS ENREGISTRER LES MODIFICATIONS APPORTEES A 1PDA.xls ?
idem pour le message suivant : LES FEUILLES SELECTIONNEES PEUVENT CONTENIR DES DONNEES. POUR SUPPRIMER etc ...
d'autre part, pour que vous puissiez tester ma routine, il y a un problème dans syncFLYout : je ne sais pas comment définir un chemin pointant vers le répertoire courant par défaut car quand j'enregistre une macro, Excel me met :
ActiveWorkbook.SaveAs Filename:= "C:\Documents and Settings\fly\Bureau\flyPDA.xls",
idem pour suncFLYin
Workbooks.Open Filename:="C:\Documents and Settings\fly\Bureau\flyPDA.xls"
Merci et bonne nuit !
Michel
je cherche une solution pour le problème suivant :
J'ai un fichier Excel sur l'ordinateur un peu complexe, avec des calculs, un tableau croisé dynamique etc. Les données sont sur une feuille, les calculs et rapports sur d'autres feuilles.
J'entre fréquemment des données grâce à mon PDA (PocketPC), mais cette version allégée d'Excel (pocketexcel) ne gère ni les formules complexes (recherchev( ) ) ni les TCD et encore moisn les graphiques. Actuellement, je synchronise mon PDA à mon PC en copiant le fichier du PC vers le PDA (pas de problème pour ça) puis une fois que j'ai entré quelques données, je renvoie ce fichier vers le PC, qui du coup se retrouve avec une version super allégée, juste les données brutes. Il faut alors que je les recopie à la main dans la feuille du fichier excel du PC qui contient toutes les formules et claculs.
J'ai fait deux macros pour que le fichier du PC crée une version allégée ne contenant que les données (que j'enverrai sur le PDA par mes propres moyens). Et qu'ensuite, le fichier Excel du PC sache lire les données du fichier allégé du PDA pour mettre à jour sa propre feuille de données.
Est-ce clair ou pas du tout ?
Autant dire que je ne suis ni un professionnel de la programmation, ni un esthète des lignes de code, je connais tout juste les rudiments de VBA que j'ai appris sur le tas en analysant des macros.
J'ai mis en pièce jointe un fichier ZIP contenant un exemple de ces deux fichiers. Celui du PC s'appelle flyPC.xls et contient les données dans une feuille, les calculs dans l'autre. Celui destiné au PDA flyPDA.xlsne contient que les données destinées à être renvoyées dans le PC.
J'ai fait deux macros, la première syncFLYout() qui exporte la feuille données de flyPC.xls vers un fichier flyPDA.xls, et une seconde macro suncFLYin() qui réimporte les données de flyPDA.xls dans la feuille "données" de flyPC.xls
Ma question : comment éviter que syncFLYout( ) ne me pose pas la question : VOULEZ-VOUS ENREGISTRER LES MODIFICATIONS APPORTEES A 1PDA.xls ?
idem pour le message suivant : LES FEUILLES SELECTIONNEES PEUVENT CONTENIR DES DONNEES. POUR SUPPRIMER etc ...
d'autre part, pour que vous puissiez tester ma routine, il y a un problème dans syncFLYout : je ne sais pas comment définir un chemin pointant vers le répertoire courant par défaut car quand j'enregistre une macro, Excel me met :
ActiveWorkbook.SaveAs Filename:= "C:\Documents and Settings\fly\Bureau\flyPDA.xls",
idem pour suncFLYin
Workbooks.Open Filename:="C:\Documents and Settings\fly\Bureau\flyPDA.xls"
Merci et bonne nuit !
Michel
Pièces jointes
Dernière édition: