Rechercher valeur puis copier/coller la ligne correspondante
Résolu
Anaïs
-
Anaïs -
Anaïs -
Bonjour !!
Alors voilà, après plusieurs (heures de) recherches, mon dernier espoir est ici.
Je travaille dans un tableau excel avec plusieurs colonnes (nb non variable) et plusieurs lignes (là le nombre est variable).
Certaines de ces lignes ont une valeur 0 en colonne G (par exemple) (suite à une formule que j'ai appliquée pour afficher la valeur 0). Je souhaiterai créer une macro qui, dans une nouvelle feuille excel:
1) Compte le nombre de ligne total du tableau, le nombre de ligne où le 0 apparrait et faire le rapport en pourcentage. (Ca je devrais m'en sortir, j'ai les bonnes formules pour calculer tout ca)
2) Recopie les lignes où la colonne G est égale à 0 tout en enlevant les lignes blanches dans le nouveau tableau (j'aurais alors un nouveau tableau avec mes lignes où la colonne G est égale à 0 à la suite les une des autres, et pas des lignes séparées du nombre de lignes où la colonne G n'est pas égale à 0)
3) Une colonne comporte le nombre de jours de retard de paiement. Je voudrais donc que la macro calcul les quartiles de l'ensemble des jours de paiement, puis me fasse un pourcentage du nombre de ligne dans chaque quartile.
Je m'y connais un peu en VBA, mais c'est loin d'etre la folie.
Je peux mettre en ligne un fichier test si je n'ai pas été assez claire.
Merci de votre réponse rapide, c'est plutot urgentissime (rapport à rendre pour ... euh attendez voir, hier il me semble .... Please help !!!)
Alors voilà, après plusieurs (heures de) recherches, mon dernier espoir est ici.
Je travaille dans un tableau excel avec plusieurs colonnes (nb non variable) et plusieurs lignes (là le nombre est variable).
Certaines de ces lignes ont une valeur 0 en colonne G (par exemple) (suite à une formule que j'ai appliquée pour afficher la valeur 0). Je souhaiterai créer une macro qui, dans une nouvelle feuille excel:
1) Compte le nombre de ligne total du tableau, le nombre de ligne où le 0 apparrait et faire le rapport en pourcentage. (Ca je devrais m'en sortir, j'ai les bonnes formules pour calculer tout ca)
2) Recopie les lignes où la colonne G est égale à 0 tout en enlevant les lignes blanches dans le nouveau tableau (j'aurais alors un nouveau tableau avec mes lignes où la colonne G est égale à 0 à la suite les une des autres, et pas des lignes séparées du nombre de lignes où la colonne G n'est pas égale à 0)
3) Une colonne comporte le nombre de jours de retard de paiement. Je voudrais donc que la macro calcul les quartiles de l'ensemble des jours de paiement, puis me fasse un pourcentage du nombre de ligne dans chaque quartile.
Je m'y connais un peu en VBA, mais c'est loin d'etre la folie.
Je peux mettre en ligne un fichier test si je n'ai pas été assez claire.
Merci de votre réponse rapide, c'est plutot urgentissime (rapport à rendre pour ... euh attendez voir, hier il me semble .... Please help !!!)
A voir également:
- Rechercher valeur puis copier/coller la ligne correspondante
- Historique copier coller - Guide
- Copier-coller - Accueil - Informatique
- Copier coller pdf - Guide
- Style d'écriture a copier coller - Guide
- Partager photos en ligne - Guide
3 réponses
Bonjour
pour essayer d'^tre efficace
Mettre le classeur sans données confidentielles en pièce jointe sur https://www.cjoint.com/
et coller le raccourci proposé (clic droit) dans le message de réponse
Dans l'attente
pour essayer d'^tre efficace
Mettre le classeur sans données confidentielles en pièce jointe sur https://www.cjoint.com/
et coller le raccourci proposé (clic droit) dans le message de réponse
Dans l'attente
re,
ci dessous code prévu pour le nombre de lignes indiqué dans ton message
sans l'histoire des quartiles qui me rappelles quelquechose de ma jeunesse: j'ai horreur des stats et donc explique moi si ca te parait difficile à insérer dans le code (à moins que tu le fasses par formule)
la bête:
ci dessous code prévu pour le nombre de lignes indiqué dans ton message
sans l'histoire des quartiles qui me rappelles quelquechose de ma jeunesse: j'ai horreur des stats et donc explique moi si ca te parait difficile à insérer dans le code (à moins que tu le fasses par formule)
la bête:
Option Explicit
Option Base 1
'----------------------------------------------------------------------
Sub Transferer_sans_zero()
Dim Derlig As Long, T_init, Nbre As Long
Dim T_zero, Idx As Long, Lig As Long, Col As Byte
'--------- Initialisations
Application.ScreenUpdating = False 'fige l'écran:confort et rapidité
With Sheets("feuil1")
'mémorise le tableau initial
Derlig = .Columns("A").Find(what:="*", searchdirection:=xlPrevious).Row
T_init = .Range("A3:F" & Derlig)
'construit une variable tableau de taille sans les zéros col F
Nbre = Application.CountIf(.Range("F3:F" & Derlig), 0)
ReDim T_zero(UBound(T_init) - Nbre, 6)
End With
'-----------remplissage de T_zero
Lig = 1
For Idx = 1 To UBound(T_init)
If T_init(Idx, 6) <> 0 Then
For Col = 1 To 6
T_zero(Lig, Col) = T_init(Idx, Col)
Next
Lig = Lig + 1
End If
Next
'----------------- restitution tableau sans zéro dans feuille 2
With Sheets("feuil2")
.Range("A3").Resize(UBound(T_zero), 6) = T_zero
.Range("A3:F" & UBound(T_zero) + 2).Borders.Weight = xlThin
.Columns("A:F").Columns.AutoFit
.Activate
End With
End Sub
Bonjour Anaïs,
bonjour michel_m,
Une autre proposition avec un filtre avancé
https://www.cjoint.com/c/EHujzGDCEWg
A+
bonjour michel_m,
Une autre proposition avec un filtre avancé
https://www.cjoint.com/c/EHujzGDCEWg
A+
http://www.cjoint.com/c/EHugUfo3l2g
Merci beaucoup !
combien de lignes (environ) dans la réalité ?