Bonjour à vous.
Je vous contact car après recherche, je tombe sur des bouts de code non fonctionnel et des choses qui fonctionne pas, donc je ne sais pas comment m'y prendre.
Je cherche à automatiser l'ajout d'une ligne a la suite d'un classeur Excel. (2016 et 2013)
Le fichier est un fichier Comptable, et les ajouts automatiques sont des Charges Fixes donc des constantes (pour illustrer ma demande).
Actuellement j'ai trouver comment écrire mes constantes grâce à l'enregistreur de macro
Grâce à ce bout de code, je sais comment écrire a partir d'une celle active, parfait, en jouant avec les offset je pourrais faire tous ce que je souhaite (ajouter plusieurs lignes)
Maintenant, j'ai cherché des codes pour trouver la dernière colonne utilisé ou non utilisé peu importe.
J'ai tester plusieurs code, rien de concret.
Une fois que je connais l'index de la dernière row, je cherche a activé une cette Cell pour la faire devenir l'ActiveCell et donc pouvoir utiliser le code ci dessus.
Et pour finir, je souhaite planifié cette macro, avez vous des cron/jobs en excel ? Je ne suis pas satisfait par les solutions que j'ai trouvé sur la toile, car ils passent par le planification de tache, et un script batch, et exécute leurs fonctions avec l’événement Workbook_Open.
Moi je prefererais qu'a chaque Workbook_Open, mètre un test du genre : (je vous l’écrit en algo simple car je connais pas la syntaxe)
Début Workbook_Open
Constante MoisDernièreAutomatisation type int (persistante, même après la fermeture du fichier, éventuellement je peux l’écrire dans une cellule masquée)
SI : MoisActuel > MoisDernièreAutomatisation AND JourActuel >= 10 (exemple)
Alors Exécute Fonction_Ajout_Charge_Automatique()
Fin Workbook_Open
Il est important pour moi d'avoir un fichier qui est totalement indépendant, si des taches planifier doivent entré en jeux, alors le fichier est dépendant de la tache planifié et donc du PC, je souhaiterais évite cette contrainte.
Si vous voyez une autre façon de faire (j'ai une idée d'algorithme mais c'est beaucoup plus complexe et je n'ai pas le niveau en VBA)
Dernière remarque : IL EST INDISPENSABLE que ceci soit inclus dans le fichier xlsx, si une manip n'est pas faisable directement par le fichier, et qu'une tache planifiée doit entrer en jeux, alors il est inutile de m'aider, car dans ce cas je peux créer un exécutable qui ouvrira le fichier et qui ajoutera les informations automatiquement (en C# .net). En c# je sais effectuer toutes les actions que j'ai cité plus haut, aucun problème, même faire mieu, mais je dépendrais du PC sur lequel la tache et l'exe sont configuré. Mon but est d'avoir un fichier indépendant du PC sur lequel il est ouvert.
Merci de votre lecture !
Cordialement.
Je vous contact car après recherche, je tombe sur des bouts de code non fonctionnel et des choses qui fonctionne pas, donc je ne sais pas comment m'y prendre.
Je cherche à automatiser l'ajout d'une ligne a la suite d'un classeur Excel. (2016 et 2013)
Le fichier est un fichier Comptable, et les ajouts automatiques sont des Charges Fixes donc des constantes (pour illustrer ma demande).
Actuellement j'ai trouver comment écrire mes constantes grâce à l'enregistreur de macro
Code:
ActiveCell.Select
ActiveCell.FormulaR1C1 = "Ma Charge Fixe"
ActiveCell.Offset(0, 2).Range("A1").Select
ActiveCell.FormulaR1C1 = "Ma constante"
ActiveCell.Offset(6, 0).Range("A1").Select
Grâce à ce bout de code, je sais comment écrire a partir d'une celle active, parfait, en jouant avec les offset je pourrais faire tous ce que je souhaite (ajouter plusieurs lignes)
Maintenant, j'ai cherché des codes pour trouver la dernière colonne utilisé ou non utilisé peu importe.
J'ai tester plusieurs code, rien de concret.
Une fois que je connais l'index de la dernière row, je cherche a activé une cette Cell pour la faire devenir l'ActiveCell et donc pouvoir utiliser le code ci dessus.
Et pour finir, je souhaite planifié cette macro, avez vous des cron/jobs en excel ? Je ne suis pas satisfait par les solutions que j'ai trouvé sur la toile, car ils passent par le planification de tache, et un script batch, et exécute leurs fonctions avec l’événement Workbook_Open.
Moi je prefererais qu'a chaque Workbook_Open, mètre un test du genre : (je vous l’écrit en algo simple car je connais pas la syntaxe)
Début Workbook_Open
Constante MoisDernièreAutomatisation type int (persistante, même après la fermeture du fichier, éventuellement je peux l’écrire dans une cellule masquée)
SI : MoisActuel > MoisDernièreAutomatisation AND JourActuel >= 10 (exemple)
Alors Exécute Fonction_Ajout_Charge_Automatique()
Fin Workbook_Open
Il est important pour moi d'avoir un fichier qui est totalement indépendant, si des taches planifier doivent entré en jeux, alors le fichier est dépendant de la tache planifié et donc du PC, je souhaiterais évite cette contrainte.
Si vous voyez une autre façon de faire (j'ai une idée d'algorithme mais c'est beaucoup plus complexe et je n'ai pas le niveau en VBA)
Dernière remarque : IL EST INDISPENSABLE que ceci soit inclus dans le fichier xlsx, si une manip n'est pas faisable directement par le fichier, et qu'une tache planifiée doit entrer en jeux, alors il est inutile de m'aider, car dans ce cas je peux créer un exécutable qui ouvrira le fichier et qui ajoutera les informations automatiquement (en C# .net). En c# je sais effectuer toutes les actions que j'ai cité plus haut, aucun problème, même faire mieu, mais je dépendrais du PC sur lequel la tache et l'exe sont configuré. Mon but est d'avoir un fichier indépendant du PC sur lequel il est ouvert.
Merci de votre lecture !
Cordialement.