Probleme macro

Cris68300 Messages postés 104 Date d'inscription   Statut Membre Dernière intervention   -  
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
J'ai besoin d'aide...
C'est le début de la création de mon fichier, mais je rencontre déjà un problème lors de la macro pour trier= quand je trie le client 9 se retrouve sur facture 5 et le 5 sur la facture 9. pourquoi svp???

Le code créé est:

Sub Macro5()
'
' Macro5 Macro
'

'
ActiveWorkbook.Worksheets("Suivi facture").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Suivi facture").AutoFilter.Sort.SortFields.Add Key _
:=Range("A1:A3162"), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Suivi facture").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub

De plus je n'arrive pas a vous joindre mon fichier sur ce post pour meilleure compréhension...

Merci d'avance pour votre aide!!!

Cris
A voir également:

9 réponses

via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Bonjour

Poste un exemple de ton ficher sur monpartage.fr, fais créer un lien que tu copies et reviens coller ici

Cdlmnt
Via
0
Cris68300 Messages postés 104 Date d'inscription   Statut Membre Dernière intervention  
 
https://mon-partage.fr/f/GpdE58xb/

Merci pour l'info, je ne connaissais pas...
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
OK j'ai le fichier mais il n'y a pas de macro !!

0
Cris68300 Messages postés 104 Date d'inscription   Statut Membre Dernière intervention  
 
Pourtant moi quand je l'ouvre via le lien, elle y est = bouton37
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Non je n'ai aucune macro associée au bouton
Cette macro doit être dans une autre fichier de ton ordi
Tu as du faire une copie du fichier pour l'envoyer mais sans macro
Chez toi ça fonctionne donc mais pas chez moi

Réenregistre ton fichier initial en extension xslm et reposte le sur mon partage
0
Cris68300 Messages postés 104 Date d'inscription   Statut Membre Dernière intervention  
 
Ah ok, c'étais bien ça, merci encore:

https://mon-partage.fr/f/Uwx5ZVu7/
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Toujours rien et en plus j'ai une erreur VBA à l'ouverture du fichier !
On va procéder autrement

Dis moi quel tri tu veux effectuer et je te mettrais la macro correspondante

Mais le problème que tes valeurs sont issus de formules les extrayant d'une autre feuille


"L'imagination est plus importante que le savoir."    A. Einstein
0
Cris68300 Messages postés 104 Date d'inscription   Statut Membre Dernière intervention  
 
bizar...

juste tres simple, tri par ordre des numero de facture, sans afficher les vides, mais mon probleme est que certaine ligne ensuite ne concorde plus...
le client 9 se retrouve dans la facture 5
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Cela vient du fait qu'il y a des formules et non des valeurs
Il faut procéder autrement
Tu veux transferer toutes les infos de suivi devis dans suivi facture mais dans l'ordre des n°s ?
Si c'est cela on fait un macro qui actualise suivi facture en allant chercher les n°s dans l'ordre, après par formules RECHERCHEV on rapatrie les données
Est tu d'accord ?
0
Cris68300 Messages postés 104 Date d'inscription   Statut Membre Dernière intervention  
 
Oui tu as tout compris!!!! C'est exactement ce que je veux faire! Uniquement pour les devis facturés, donc que si il y a un numero de facture dans le fichier suivi devis
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746 > Cris68300 Messages postés 104 Date d'inscription   Statut Membre Dernière intervention  
 
Voilà ton fichier avec la macro associée au bouton
https://mon-partage.fr/f/BhuERglB/

Également mis les formules adéquates dans les autres colonnes que j'ai verrouillées avant d'activer la protection de la feuille de manière à éviter un effacement ded'une formule par mégarde

Cdlmnt
Via
0
Cris68300 Messages postés 104 Date d'inscription   Statut Membre Dernière intervention  
 
C'est vraiment super, juste un petit bug, plus tu clic sur mis a jour, plus sa se recopie et viens a la suite... peut etre le gerer via les doublons
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746 > Cris68300 Messages postés 104 Date d'inscription   Statut Membre Dernière intervention  
 
On peut le gérer en rajoutant une X dans une colonne de devis pour indiquer qu'il a été recopié
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
En fait pas besoin (il suffit de faire un NB.SI du n° facture sur la 1ere colonne, si le résultat est 0 on recopie le n°)
J'ai modifié la macro en conséquence
https://mon-partage.fr/f/zYNjH3JW/

Cdlmnt
Via
0
Cris68300 Messages postés 104 Date d'inscription   Statut Membre Dernière intervention  
 
Tu es vraiment très fort, j'apprécie!!!!! et surtout merci de ta rapidité des réponses...
juste dit moi comment enlever les protections de la case mise a jour... car d'un j'aimerais la déplacer mais de deux, surtout, j'aimerais voir le code histoire d'apprendre...

Mais vraiment merci beaucoup!!!!!
0
Cris68300 Messages postés 104 Date d'inscription   Statut Membre Dernière intervention  
 
Non il y a problème...
la facture 1 s'affiche dans la cellule du titre et la ligne n'apparais pas dans le suivi des factures
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746 > Cris68300 Messages postés 104 Date d'inscription   Statut Membre Dernière intervention  
 
Désolé , c'est de ma faute, petite erreur d'écriture dans la macro

Remplace la par celle ci :
Private Sub CommandButton1_Click()
Dim LigneA As Long, ligneB As Long
LigneA = Sheets("Suivi devis").Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row
ligneB = Sheets("Suivi facture").Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row
For n = 1 To Application.WorksheetFunction.CountA(Sheets("Suivi devis").Columns(8)) - 1
num = Application.WorksheetFunction.Small(Sheets("Suivi devis").Columns(8), n)
If Application.WorksheetFunction.CountIf(Sheets("Suivi facture").Columns(1), num) = 0 Then
ligneB = ligneB + 1
Sheets("Suivi facture").Range("A" & ligneB) = num
End If
Next
End Sub


Cdlmnt
Via
0
Cris68300 Messages postés 104 Date d'inscription   Statut Membre Dernière intervention  
 
Merci, mais visiblement non fonctionnelle... Mais merci quand meme
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746 > Cris68300 Messages postés 104 Date d'inscription   Statut Membre Dernière intervention  
 
Pourquoi non fonctionnelle ?
Je te renvoie le fichier qui fonctionne chez moi
https://mon-partage.fr/f/aQz43IOk/

Cdlmnt
Via
0