programmation avec VBA

programmation avec VBA - VB/VBA/VBS - Programmation

Marsh Posté le 02-10-2006 à 13:22:32    

Salut, je suis sur un projet qui comporte plusieurs colonnes, dans la premiere on trouve le nom des agents, la seconde comporte une date.
Je souhaite que mon programme trouve toutes les lignes qui comportent le même nom d'agent et la même date en face du nom. (il peut y avoir deux noms identique mais pas la même date).
Si c'est pas claire faire signe.....

Reply

Marsh Posté le 02-10-2006 à 13:22:32   

Reply

Marsh Posté le 02-10-2006 à 14:08:01    

Bonjour,
Plusieurs colonnes  Excel?
ou plusieurs champs Access?
 
Cordialement

Reply

Marsh Posté le 02-10-2006 à 17:44:44    

oh pardon j'ai oublié de préciser c'est sous excel!

Reply

Marsh Posté le 02-10-2006 à 18:07:03    

Bonjour
 
Tu veux faire quoi avec :
compter les lignes par agents, reporter une autre cellule, supprimer les doubles ???????
 
A+


---------------
Eric
Reply

Marsh Posté le 02-10-2006 à 20:29:59    

bon j'texplique je veux:
-le m^me prénom avec la même date  
-additionner les heures et les km (2 autres colones)
-transférer le résultat dans une autre feuille (mais ça je sais faire)
en bref:
Agent-date-heures-km

Reply

Marsh Posté le 04-10-2006 à 12:28:10    

y a vraiment personne qui sait faire ca?

Reply

Marsh Posté le 04-10-2006 à 14:50:50    

Bonjour,
peux-tu rajouter une colonne?
si oui ajouter une colonne comportant la formule:
 
=colnom & format(coldate,"aaaa/mm/jj" )
 
colnom désignant la colonne nom et coldate....
trier sur cette colonne
 
données -> sous-totaux (basée sur changement de la colonne avec la formule)
si tu ne veux pas changer l'apparence de ta feuille fais une autre feuille et travailles dedans. Si tu veux absolument une macro fais nous signe mais cela devrait déjà te donner un aperçu
Cordialement


Message édité par seniorpapou le 04-10-2006 à 14:51:59
Reply

Marsh Posté le 04-10-2006 à 17:13:47    

Bonjour à tous, et à toi chello3
 
Je te peux te faire parvenir un fichier, mais comment ?  
 
A+
 
Cordialement


---------------
Eric
Reply

Marsh Posté le 04-10-2006 à 17:17:47    

bonsoir eric455
si le fichier est petit tu peux essayer par cijoint.com
cordialement

Reply

Marsh Posté le 04-10-2006 à 21:35:24    

Bonsoir tout le monde
 
Je ne suis vraiment pas fortiche en informatique, je n'arrive pas à déposer un fivhier sur cijoint.com.
 
Mais nous allons nous débrouiller.
 
Voici du code, mais je pense que l'on peut mieux faire :
 
Sub test01()
Dim tablo(100, 4)
Range("a1" ).Select
 
For i = 1 To 1000
    If ActiveCell.Offset(i, 0).Value <> "" Then
        For a = 0 To 1000
            If tablo(a, 0) = "" Then
                tablo(a, 0) = ActiveCell.Offset(i, 0).Value
                tablo(a, 1) = ActiveCell.Offset(i, 1).Value
                tablo(a, 2) = ActiveCell.Offset(i, 2).Value
                tablo(a, 3) = ActiveCell.Offset(i, 3).Value
                Exit For
            ElseIf tablo(a, 0) = ActiveCell.Offset(i, 0).Value Then
                If tablo(a, 1) = ActiveCell.Offset(i, 1).Value Then
                    tablo(a, 2) = tablo(a, 2) + ActiveCell.Offset(i, 2).Value
                    tablo(a, 3) = tablo(a, 3) + ActiveCell.Offset(i, 3).Value
                    Exit For
                End If
             
            End If
        Next a
    Else
        Exit For
    End If
     
Next i
 
b = 1
    For a = 0 To 100
        If tablo(a, 0) = "" Then
            Exit For
        Else
            ActiveCell.Offset(b, 7).Value = tablo(a, 0)
            ActiveCell.Offset(b, 8).Value = tablo(a, 1)
            ActiveCell.Offset(b, 9).Value = tablo(a, 2)
            ActiveCell.Offset(b, 10).Value = tablo(a, 3)
        b = b + 1
        End If
    Next a
 
End Sub
 
Il faut considérer que l'on crée un bouton sur la feuille 1 avec ce code derrière, puis  
 
Dans la cellule A2 un nom
Dans B2 un prénom
Dans C2 et D2 un  nombre
Et il faut continuer sur les lignes suivantes du type :  
 
alain deu   1 6
alain troi     2   7
alain quetre   3 8
alain deu   4 9
alain troi     1  8
alain quetre  1 6
alain troi    1  5
alain quetre  1 2
 
et normalement le résultat se trouve dans H2, I2, J2 et K2
puis dans les lignes suivantes
 
J'espère que tu comprendras, n'hesite pas si tu as des pb
 
A+
 
Cordialement


---------------
Eric
Reply

Marsh Posté le 04-10-2006 à 21:35:24   

Reply

Marsh Posté le 05-10-2006 à 13:12:24    

Re bonjour à tous
 
J'ai trouvé pour joindre le fichier :
 
 http://cjoint.com/?kfnlAc2nuu
 
Cordialement


---------------
Eric
Reply

Marsh Posté le 13-10-2006 à 11:35:38    

Bonjour à tous
Bonjour Chello3
 
Que pense tu de ce que je t'ai envoyé ?


---------------
Eric
Reply

Marsh Posté le 14-10-2006 à 22:42:26    

Du code VBA est-il bien nécessaire là ou un tableau croisé dynamique résoudrait la question en quelques clics faciles et rapides ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed