VB : macro qui lit la valeur de plusieurs cel
RIYANEMADRID
-
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
VB : macro qui lit la valeur de plusieurs cellule
Bonjour,
J'ai une feuille Excel avec des colonnes qui s'actualisent grâce à une requête que j'ai crée auparavant et une colonne appart la "BV" ou chaque cellule dans cette dernière contiens une vérification :
=SI(ET(ESTNA(RECHERCHEV(B2;Base!$A:$E;3;0));OU($J2<>0;$K2<>0;$L2<>0;$M2<>0;$N2<>0));"oui";"non")
et je voudrais crée une macro qui lit les "oui" et copie les cellule de la colonne "A" et "B" correspondant à mon "oui" et les copie dans une autre feuille
Comment faire, un peu sera nécessaire
PS : ma base contient un gros nombre de ligne allant jusqu'à 2000 et plus
Merci d'avance
Bonjour,
J'ai une feuille Excel avec des colonnes qui s'actualisent grâce à une requête que j'ai crée auparavant et une colonne appart la "BV" ou chaque cellule dans cette dernière contiens une vérification :
=SI(ET(ESTNA(RECHERCHEV(B2;Base!$A:$E;3;0));OU($J2<>0;$K2<>0;$L2<>0;$M2<>0;$N2<>0));"oui";"non")
et je voudrais crée une macro qui lit les "oui" et copie les cellule de la colonne "A" et "B" correspondant à mon "oui" et les copie dans une autre feuille
Comment faire, un peu sera nécessaire
PS : ma base contient un gros nombre de ligne allant jusqu'à 2000 et plus
Merci d'avance
1 réponse
-
Bonjour
Macro à adapter à tes besoins (sheets, colonne des oui....) j'ai eu la flemme de trouver le n° de colonne BV :-)
Const col As Byte = 4 'n° colonne des "oui" Sub oui_oui() Dim Nbre_oui As Integer, Lig As Integer Dim Tablo With Sheets(1) Nbre_oui = Application.CountIf(.Columns(col), "oui") ReDim Tablo(1 To Nbre_oui, 1 To 2) Lig = 1 For cptr = 1 To Nbre_oui Lig = .Columns(col).Find("oui", .Cells(Lig, col)).Row Tablo(cptr, 1) = .Cells(Lig, 1) Tablo(cptr, 2) = .Cells(Lig, 2) Next End With Application.ScreenUpdating = False With Sheets(2) .Range("A2:B5000").ClearContents .Range("A2").Resize(Nbre_oui, 2) = Tablo .Activate End With End Sub-
merci ça m'aide beaucoup j'ai juste une petite question pour dire a ma macro de coller les données dans une colonne "A" par exemple mais dans la premiere cellule vide ; c'est-à-dire si il y a deja 1100 valeur quelle colle les valeurs a partir de la 1101 et ansi de suite parceque apres la deuxieme ou la troisime actualisation le nom de la cellule vide va changé et donc elle quelle la reconaisse elle meme
merci infinement pour ton aide -
-
-
-
-