Bonjour
je dispose d un fichier et je voudrais faire la procédure suivante.
dans l onglet BD_NEW
en colonne G4:G1000 j ai une année qui peut etre 2010 ou 2011 ou 2012 (ce n
est pas classé par ordre croissant)
cette année correspond à un onglet
exemple 2010 - 2011 - 2012
j ai donc 3 onglets (déjà créés)
dans cette onglet en colonne B4:B1000 j ai un numéro qui correspond au
numéro de facture.
exemple en B7 j ai 6398 et G7 2009
j aimerais si possible qu il aille donc dans l onglet 2009 cherche la ligne
ou se trouve la valeur de B7 (6398)
et me recopie sur l onglet 2009 dans la colonne AB avec le numero de la
ligne ou se trouve 6398 les valeur se trouvant en E7 de l onglet BD_NEW
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
MichD
Bonjour,
Voici un essai. J'ai un peu de difficulté à suivre ton explication.
La procédure fait ceci :
Pour chacune des valeurs (année) contenues dans la colonne G:G de la feuille "BD_NEW" Si la colonne B:B de la feuille "BD_NEW" contient un numéro de facture, la procédure extrait le numéro de la ligne du numéro de facture dans la colonne B:B de la feuille dont le nom (année) apparaît dans la cellule G de la feuille "BD_NEW". Dans un second temps, elle copie la valeur de la colonne E de la feuille "BD_NEW" vers la colonne AB de la feuille de l'année de départ en colonne G:G de la feuille "BD_NEW"
Si ce n'est pas ce que tu veux, c'est que je n'ai rien compris! ;-))
'-------------------------------- Sub test() Dim Rg As Range, C As Range, Ligne As Variant With Worksheets("BD_NEW") Set Rg = .Range("G2:G" & .Range("G65536").End(xlUp).Row) End With
Application.EnableEvents = False For Each C In Rg If C.Offset(, -5) <> "" Then With Worksheets(cstr(c.value)) Ligne = Application.Match(C.Offset(, -5), .Range("B:B"), 0) If IsNumeric(Ligne) Then .Range("AB" & Ligne) = C.Offset(, -2).Value End If End With End If Next Application.EnableEvents = True
End Sub '--------------------------------
MichD ------------------------------------------ "stef b" a écrit dans le message de groupe de discussion : 4f54efba$0$12505$
Bonjour je dispose d un fichier et je voudrais faire la procédure suivante.
dans l onglet BD_NEW en colonne G4:G1000 j ai une année qui peut etre 2010 ou 2011 ou 2012 (ce n est pas classé par ordre croissant) cette année correspond à un onglet exemple 2010 - 2011 - 2012 j ai donc 3 onglets (déjà créés)
dans cette onglet en colonne B4:B1000 j ai un numéro qui correspond au numéro de facture.
exemple en B7 j ai 6398 et G7 2009
j aimerais si possible qu il aille donc dans l onglet 2009 cherche la ligne ou se trouve la valeur de B7 (6398)
et me recopie sur l onglet 2009 dans la colonne AB avec le numero de la ligne ou se trouve 6398 les valeur se trouvant en E7 de l onglet BD_NEW
merci d avance.
Bonjour,
Voici un essai. J'ai un peu de difficulté à suivre ton explication.
La procédure fait ceci :
Pour chacune des valeurs (année) contenues dans la colonne G:G de la feuille "BD_NEW"
Si la colonne B:B de la feuille "BD_NEW" contient un numéro de facture, la procédure
extrait le numéro de la ligne du numéro de facture dans la colonne B:B de la feuille
dont le nom (année) apparaît dans la cellule G de la feuille "BD_NEW". Dans un second
temps, elle copie la valeur de la colonne E de la feuille "BD_NEW" vers la colonne AB
de la feuille de l'année de départ en colonne G:G de la feuille "BD_NEW"
Si ce n'est pas ce que tu veux, c'est que je n'ai rien compris!
;-))
'--------------------------------
Sub test()
Dim Rg As Range, C As Range, Ligne As Variant
With Worksheets("BD_NEW")
Set Rg = .Range("G2:G" & .Range("G65536").End(xlUp).Row)
End With
Application.EnableEvents = False
For Each C In Rg
If C.Offset(, -5) <> "" Then
With Worksheets(cstr(c.value))
Ligne = Application.Match(C.Offset(, -5), .Range("B:B"), 0)
If IsNumeric(Ligne) Then
.Range("AB" & Ligne) = C.Offset(, -2).Value
End If
End With
End If
Next
Application.EnableEvents = True
End Sub
'--------------------------------
MichD
------------------------------------------
"stef b" a écrit dans le message de groupe de discussion : 4f54efba$0$12505$ba4acef3@reader.news.orange.fr...
Bonjour
je dispose d un fichier et je voudrais faire la procédure suivante.
dans l onglet BD_NEW
en colonne G4:G1000 j ai une année qui peut etre 2010 ou 2011 ou 2012 (ce n
est pas classé par ordre croissant)
cette année correspond à un onglet
exemple 2010 - 2011 - 2012
j ai donc 3 onglets (déjà créés)
dans cette onglet en colonne B4:B1000 j ai un numéro qui correspond au
numéro de facture.
exemple en B7 j ai 6398 et G7 2009
j aimerais si possible qu il aille donc dans l onglet 2009 cherche la ligne
ou se trouve la valeur de B7 (6398)
et me recopie sur l onglet 2009 dans la colonne AB avec le numero de la
ligne ou se trouve 6398 les valeur se trouvant en E7 de l onglet BD_NEW
Voici un essai. J'ai un peu de difficulté à suivre ton explication.
La procédure fait ceci :
Pour chacune des valeurs (année) contenues dans la colonne G:G de la feuille "BD_NEW" Si la colonne B:B de la feuille "BD_NEW" contient un numéro de facture, la procédure extrait le numéro de la ligne du numéro de facture dans la colonne B:B de la feuille dont le nom (année) apparaît dans la cellule G de la feuille "BD_NEW". Dans un second temps, elle copie la valeur de la colonne E de la feuille "BD_NEW" vers la colonne AB de la feuille de l'année de départ en colonne G:G de la feuille "BD_NEW"
Si ce n'est pas ce que tu veux, c'est que je n'ai rien compris! ;-))
'-------------------------------- Sub test() Dim Rg As Range, C As Range, Ligne As Variant With Worksheets("BD_NEW") Set Rg = .Range("G2:G" & .Range("G65536").End(xlUp).Row) End With
Application.EnableEvents = False For Each C In Rg If C.Offset(, -5) <> "" Then With Worksheets(cstr(c.value)) Ligne = Application.Match(C.Offset(, -5), .Range("B:B"), 0) If IsNumeric(Ligne) Then .Range("AB" & Ligne) = C.Offset(, -2).Value End If End With End If Next Application.EnableEvents = True
End Sub '--------------------------------
MichD ------------------------------------------ "stef b" a écrit dans le message de groupe de discussion : 4f54efba$0$12505$
Bonjour je dispose d un fichier et je voudrais faire la procédure suivante.
dans l onglet BD_NEW en colonne G4:G1000 j ai une année qui peut etre 2010 ou 2011 ou 2012 (ce n est pas classé par ordre croissant) cette année correspond à un onglet exemple 2010 - 2011 - 2012 j ai donc 3 onglets (déjà créés)
dans cette onglet en colonne B4:B1000 j ai un numéro qui correspond au numéro de facture.
exemple en B7 j ai 6398 et G7 2009
j aimerais si possible qu il aille donc dans l onglet 2009 cherche la ligne ou se trouve la valeur de B7 (6398)
et me recopie sur l onglet 2009 dans la colonne AB avec le numero de la ligne ou se trouve 6398 les valeur se trouvant en E7 de l onglet BD_NEW