Lire un script VBA pour modifier le format d'une colonne

Bonjour à toutes et à tous,

Je travaille sur un fichier sur lequel il me reste une petite chose à modifier pour que cela corresponde bien et je suis incapable de lire le code car je ne maitrise pas VBA.

J'ai un fichier sur lequel j'ai des noms, des prénoms, des identifiants pour les anonymiser, et le nombre de dossiers par personne. Je voudrais que d'un coup d'oeil, on puisse voir le nombre de dossiers totaux par personne. Le script VBA que j'ai, ne me permet pas de faire apparaître le nombre de dossiers totaux par personne. Pour une personne qui a deux dossiers, il fait apparaître le nombre de dossiers jusqu'à la ligne sélectionnée, au lieu de faire apparaître le nombre de dossiers totaux. Ma pièce jointe est plus claire.

Pour exemple, Paul Tremblay a l'identifiant 0003 et 2 dossiers. Je voudrais qu'en E4 et E13, apparaissent 02-0003.

Et donc que la colonne E soit automatisée pour afficher ce format.

En remerciant par avance ceux ou celles qui se pencheront là-dessus,

Leylani

37nombre-doss-vba.zip (16.47 Ko)

Bonjour

A tester

Bonjour

Sub Identifiant()
  Set mondico = CreateObject("Scripting.Dictionary")
  Set mondico2 = CreateObject("Scripting.Dictionary")
  i = 1
  For Each c In Range([b2], [b65000].End(xlUp))
    temp = c.Value & c.Offset(, 1).Value
    If Not mondico.exists(temp) Then
       mondico(temp) = i
       i = i + 1
    End If
    c.Offset(, 2) = Format(mondico.Item(temp), "0000")
    mondico2(temp) = mondico2(temp) + 1
  Next c
  With Range("E2")
  .FormulaR1C1 = "=TEXT(COUNTIF(C4,RC4),""00"")&""-""&TEXT(RC4,""0000"")"
  .AutoFill Destination:=Range("E2:E" & Range("B65000").End(xlUp).Row), Type:=xlFillDefault
  End With
End Sub

Amicalement

Nad

Edit : Bonjour Banzaï

Bonjour et merci à tous les deux,

Banzaï, tes deux solutions me conviennent parfaitement, toutefois est-il possible de faire apparaître la macro dans la colonne E plutôt que G ? Egalement, la commande filtre 1 et 2 ne fonctionnent plus ?

Nad, pour modifier le script et coller le tien, je dois faire Alt F11 et coller sur la première partie du script ?

Merci

Bonjour

Modification faite

Merci Nad (je t'ai piqué une partie de la formule)

leylani a écrit :

Egalement, la commande filtre 1 et 2 ne fonctionnent plus ?

Le filtre 1 c'est normal plus de dossier unique

A tester

Merci pour ce dernier fichier. Après l'avoir testé, je relève que :

- quand je rajoute des noms supplémentaires en B et C, la commande Go n'indique rien dans les colonnes E et F. (Peut-être que je dois préciser que le vrai fichier contiendra environ 3500 noms et prénoms (dont des doublons) pour un total d'environ 1500 individus réels. Certaines personnes n'auront qu'un seul dossier mais d'autres en auront jusqu'à 20).

- quand je supprime la ligne d'une personne qui n'a que deux dossiers (par exemple la ligne 8, avec Pierre Dupuis), le nombre de dossiers dont elle dispose, ne s'actualise pas en colonne (donc pour Pierre Dupuis, en E16). Il continue d'être indiqué comme quelqu'un qui a deux dossiers.

Et effectivement, pour le filtre 1, tu as raison !

Merci encore pour votre aide.

EDIT : mon problème avec la suppression des lignes est résolu. (évidemment, si je ne reclique pas sur Go...je risque pas d'avoir grand-chose). Seul reste celui des ajouts de noms/prénoms en B et C.

Bonsoir

Quand tu rajoutes des données indiques moi quelles colonnes tu renseignes

merci

Bonsoir,

je renseigne les colonnes B et C.

Comme sur le fichier ci-joint.

Merci

Bonsoir

Je n'avais pas vu tout ça

Je pense que la macro de Nad est tout à fait ce que tu cherches

Moi je ne me suis occupé que de la comptabilisation des dossiers

Nad avait intégré dans ta macro existante cette comptabilisation

C'est sa macro que tu dois utiliser

En plus - avantage non négligeable - tu peux supprimer des lignes sans relancer la macro

désolé si je t'ai entrainé du côté obscur du VBA ( c'est de l'humour(enfin je crois))

OK merci tout de même de t'être penché sur mon problème !!

Le seul souci que j'ai, risible, je sais pour des personnes qui maitrisent VBA, c'est que je ne sais pas comment copier son script dans mon fichier. Pour moi, il est plus facile si on l'intègre directement dans le fichier que j'envoie. Ou qu'on m'explique comment faire...pour modifier mon fichier de base.

Désolée, le mot VBA n'existe pour moi que depuis quelques jours. Il reste tout à fait obscur effectivement. Mais je songe à me former vu ce qu'il est possible de faire avec

Si quelqu'un peut m'aider à modifier directement mon fichier de base (ou m'expliquer comment faire) avec la macro de Nad, je lui serai infiniment reconnaissant.

23nombre-doss-vba.zip (16.48 Ko)

Bonjour

En retour ton fichier modifié

Rien de bien compliqué, juste une histoire de copier/coller

Suppression de la macro existante

Collage de la macro de Nad

C'est tout

Tout le monde à débuté

Mille mercis !

Je m'étais tentée à aller dans Alt F11, supprimer la première partie de la macro jusqu'au codage du filtre 1, coller celle de Nad (je me demandais s'il fallait enregistrer ou faire autre chose pour que ça soit actualisé), et quand je retournais sur Excel et que je cliquais sur Go, mon ordinateur se mettait à tourner à pleine puissance, tout était gelé et il y avait écrit sur Excel quelque chose comme Calcul: Processeur avec des % qui défilaient...et recommençaient...Ca ne s'arrêtait qu'à l'aide de la touche Esc..

Bon je suis soulagée, merci encore !!

Leylani

Rechercher des sujets similaires à "lire script vba modifier format colonne"