Macro réécriture données en «Dur

Bonjour,

Voilà j’explique mon problème : j’utilise actuellement un tableur Excel pour compter le nombre de dossiers clients traités par jour (pour ensuite en faire un reporting mensuel puis annuel).

Je l’ai organisé de la manière suivante : 12 feuilles pour les 12 mois de l’année. Sur chaque feuille j’ai décomposé les type d’intervention dans les colonnes et les jours du mois en tête de chaque ligne. Pour chaque date et chaque type d’intervention , j’utilise une formule qui me compte le nombre de fichiers PDF présents dans un dossier précis sur mon ordinateur en fonction du type d’intervention et de la date. Le problème est que à la fin de chaque journée je suis obligé de réécrire en dur les données comptées par ma formule.

Ma question est donc : existe t’il une macro (ou autre) qui me permettrait ,via un bouton par exemple, de remplacer cette formule dans chaque cellule de la journée concernée par les données en dur affichées ?

J’espere avoir été assez clair dans mes explication ^^

Merci par avance

Salut Leirom,

existe t’il une macro (ou autre) qui me permettrait ,via un bouton par exemple, de remplacer cette formule dans chaque cellule de la journée concernée par les données en dur affichées ?

Il existe le copier / coller les valeurs uniquement aussi :p

Exemple :

capt1

Ici j'ai ma plage avec formule que j'ai copié

capt2

ici je clique sur mon coller (flèche qui part vers le bas) et je choisi "coller les valeurs"

capt3

Ici j'ai ma plage avec les résultats uniquement

Si tu a vraiment besoin de macro, reviens vers nous !

bonjour

on voudrait bien un fichier de 2 onglets de 3 colonnes et 5 lignes, avec le résultat attendu

note : je déconseille d'écraser ou effacer les données saisies (on conserve tout, et on fait des TCD par exemple)

note 2 : la solution simple de Juice (salut ! ) me plaît encore plus, même si on perd les saisies

à te relire

Merci pour vos réponses,

La technique de Juice est celle que j’utilise actuellement lorsque je met à jour mon tableur chaque soir.

Dans l’ideal (Juste par confort et pour éviter trop de clics) , j’aimerais en fait une sorte de bouton qui me fasse cette manipulation, avec la contrainte que cela soit uniquement pour la journée en cours.

(Désolé impossible pour moi pour le moment de vous fournir un tableur en exemple car pas d’ordinateur sous la main).

Re- Leirom

Salut Jmd !

Dans l’ideal (Juste par confort et pour éviter trop de clics) , j’aimerais en fait une sorte de bouton

Donc tu veux bien passer par VBA (La raison est compréhensible ;D !)

Ce que tu demande est tout à fais réalisable, mais sans ton fichier on a pas les références aux colonnes et aux cellules :p

On te fais un code générique à adapter plus tard à ton propre fichier, ou on patiente un peu et tu nous l'enverras ?

Je vais faire en sorte de mettre en ligne un fragment de mon tableur pendant midi , ce sera plus simple

Alors voici en pièce jointe un exemple de mon tableau de suivi.

Pour être plus précis, les valeurs qui sont recherchées automatiquement à partir d'un dossier sont celles des colonnes C à E, et G à M. (j'ai volontairement effacé la formule pour les journées restantes du mois).

La colonne B fait la somme des colonnes C, D et E

La colonne F fait la somme des colonnes G, H et I

La colonne O fait la somme des colonnes B, F, et J à M.

La ligne 32 fait la somme de chaque colonne (variable en fonction de nombre de jours dans le mois).

Chaque soir, je recopie donc en brut les valeurs du jour qui se trouvent dans les colonnes C à E et G à M, et j'aimerais donc avoir un bouton qui me fasse cette manipulation pour toute la journée concernée (et uniquement la journée concernée).

J'espère que ça ira avec ça

7exemple-suivi.xlsx (12.65 Ko)

Re- Leirom !

Édit : Code et fichier modifié pour un truc un peu mieux :p

Voici ci-joint ton fichier modifié, et ci-dessous le code qui (j'espère!) répond à ta demande :p

Tu a un petit bouton que j'ai mis en haut de la colonne N qui lance ta macro !

Sub MiseàJour()
Dim x As Long, y As Long
For x = 1 To Worksheets.Count
    For y = 2 To Sheets(x).Range("A" & Rows.Count).End(xlUp).Row
        If Sheets(x).Cells(y, 1) = Date Then Sheets(x).Cells(y, 15) = Sheets(x).Cells(y, 15).Value
    Next
Next
End Sub

La "mise en brut" se fais sur toute les feuilles !

Restant à ta dispo si tu a des question

12pour-leirom.xlsm (29.14 Ko)

Merci beaucoup pour le temps que te me consacre, ce que tu m'as envoyé est effectivement ce que je cherchais.

Seul petit bémol, comment faire pour que cette MAJ ne s'applique que sur la feuille active et uniquement pour la date du jour ?

Si tu as une idée ^^

PS : je viens d'essayer la macro sur mon fichier original et il ne se passe malheureusement rien ...

Re-

Remplace l'ancien code par celui là

Sub MiseàJour()
Dim y As Long
For y = 2 To Range("A" & Rows.Count).End(xlUp).Row
    If Cells(y, 1) = Date Then Cells(y, 15) = Cells(y, 15).Value
Next
End Sub

L’exécution ne se fera que sur la feuille active!

PS : je viens d'essayer la macro sur mon fichier original et il ne se passe malheureusement rien ...

Entre ton fichier exemple et ton fichier original, les colonnes sont les mêmes ? Le format des dates aussi ?

Oui , les colonnes sont exactement les mêmes et formats de dates également .

(Désolé je suis pénible ...)

(Désolé je suis pénible ...)

Point du tout !

Oui , les colonnes sont exactement les mêmes et formats de dates également .

Du coup est-ce que tu a bien une cellule qui est égal à la date du jour ?

Si ce n'est pas le cas, alors la macro ne procèdera pas à la "réécriture en dur"

Et si c'est le cas, tu a bien vérifié la cellule avec la formule ?

Nous mettre ton fichier original est impossible :p ? (En laissant juste la colonne date et la formule)

Du coup est-ce que tu a bien une cellule qui est égal à la date du jour ?

Si ce n'est pas le cas, alors la macro ne procèdera pas à la "réécriture en dur"

Et si c'est le cas, tu a bien vérifié la cellule avec la formule ?

Nous mettre ton fichier original est impossible :p ? (En laissant juste la colonne date et la formule)

Je ne comprends pas trop le sens de ta question (désolé je ne suis pas un pro d'Excel^^), en fait toutes les cellules en colonne A correspondent aux dates du mois.

Ne serait t'il pas possible par exemple, lors de l'appui sur le bouton, d'avoir une boite de dialogue qui nous demande pour quelle date l'on souhaite recopier les données en dur ? (et donc que cela ne recopie en dur que les données qui sont initialement recherchées par ma formule, et seulement pour la date souhaitée).

Non je ne peux pas fournir le fichier original par beaucoup d'infos confidentielles dessus.

Re-

Ci-joint ton fichier modifié avec la boîte de dialogue demandée.

En espérant que sa va aider !

4pour-leirom.xlsm (29.55 Ko)

Cela ne fonctionne apparemment pas ... lorsque je clique sur le bouton il semble y avoir une action mais la formule dans mes cellules n'est pas remplacée par les données en dur .

Je pense pouvoir éventuellement t'envoyer mon fichier original par MP, cela serait possible ?

Si sa te conviens, sa me conviens aussi !

Je reste donc dans l'attente de la réception de ton fichier

re à vous

c'est un problème de VBA, il est parfois difficile de le faire fonctionner sans les données originales

par contre, résoudre un problème en MP ne permet pas de diffuser l'information à tous, et c'est dommage

il vaut alors mieux changer les données du fichier de départ : PU à la place de Pierre Ulysse (et réduire le nombre de lignes)

amitiés

re à vous

c'est un problème de VBA, il est parfois difficile de le faire fonctionner sans les données originales

par contre, résoudre un problème en MP ne permet pas de diffuser l'information à tous, et c'est dommage

il vaut alors mieux changer les données du fichier de départ : PU à la place de Pierre Ulysse (et réduire le nombre de lignes)

amitiés

Oui j'entends bien qu'il est préférable que la solution soit affichée publiquement mais malheureusement même en modifiant que très légèrement mon fichier original en modifiant les données cela n'a pas permis de résoudre mon problème. J'ai donc préféré envoyer mon fichier original en privé ...

Salut jmd

Tout à fais d'accord avec ta remarque, mais avoir eu le fichier original ne m'a permis d'aider Leirom (Encore désolé :/).

Le problème ne viens visiblement pas d'un changement de référence (aux colonnes ou aux lignes), ni d'un changement de format (date) mais apparemment la macro ne fonctionne tout simplement pas sur son PC alors que sur le mien, avec son fichier en main, la procédure c'est passé correctement :/

Et je ne sais pas comment résoudre ce genre de cas !

Restant à dispo pour toute question concernant de la VBA ou Formule !

Cdt-

Ça y est , nous avons réglé mon problème, tout fonctionne parfaitement grâce à votre aide à tous et notamment celle de Juice tout au long de ce fil.

Nous ne nous étions tous simplement pas compris pendant nos échanges sur ce sujet ^^.

En tout cas vous êtes formidables et très réactifs ! Merci beaucoup

Rechercher des sujets similaires à "macro reecriture donnees dur"