Si vos données ressemble à ceci :
Voici une partie de la solution !
Plus sérieusement...
Si vos données n'ont pas de colonne de date et qu'il y duplication de données du même type sur plusieurs colonnes, alors ce nouvel utilitaire devrait vous aider...
Voici donc un utilitaire très pratique qui permet de transformer une table de données mal organisée en quelque chose de plus pratique et efficace.
C'est une application qui m'a pris un peu de temps à développer, donc profitez-en bien !
Cet utilitaire fera fait l'objet d'un cours VBA avancé, où j'explique en détail comment il a été créée et comment il fonctionne.
Il est encore en test, donc si vous voyez des bugs ou des améliorations, n'hésitez-pas !
Cliquez ici pour le téléchargement du fichier : transformer_plages.xlsm
Vous avez aussi ci-dessous une vidéo sur le fonctionnement de cette application.
N'hésitez pas à me faire des remarques ou à remonter des bugs pour que je les intègre dans l'application.
A bientôt.
Gaëtan
Bonjour Gaétan,
Encore merci pour ce partage et tout ce que tu proposes.
Pour info, la vidéo n'est pas accessible sur mon Chrome. pas de pb avec IE.
Bonne journée
Kryss
Bonjour Krysscool,
Merci pour le retour, il faut que je vois ce qui se passe.
Je viens de tester sur mon chrome et ca fonctionne correctement.
Je vais tester sur d'autres ordinateurs ou passer la vidéo en mp4
Cordialement
Gaetan
Cool, merci.
J'aurai besoin d'un coup main Inserer La colonne E et F dans cette ligne de commande . merci
Sortie ====> Mouvement
derligjourn = derligjourn + 1
'je parcours les lignes des sorties
For Each C In Sheets("Sorties").Range("A4:A" & derlig)
'je m'assure que la sortie n'est pas vide pour éviter une insertion d'une ligne vide
If C "" Then
'je saisie que c'est une sortie
Sheets("MVT").Range("A" & derligjourn).Value = "Sorties"
'je saisie la designation
Sheets("MVT").Range("A" & derligjourn).Offset(0, 1) = C
'je saisie la quantité
Sheets("MVT").Range("A" & derligjourn).Offset(0, 2) = C.Offset(0, 1)
'je saisie la date
Sheets("MVT").Range("A" & derligjourn).Offset(0, 5) = Date
'j'incremente le numéro de ma derniere ligne
derligjourn = derligjourn + 1
End If
Next
Bonjour Laurent,
Sans le fichier, c'est un peu difficile de voir ce qui se passe.
Vous pouvez me l'envoyer par email.
Cordialement
Gaetan
Bonjour Gaëtan
l'inverse est-il faisable ? sur un critère unique colonne A ?
Merci