Autres Copier des données vers une nouvelle feuille excel VBA

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Carolinebd

XLDnaute Nouveau
Bonjour

Je suis débutante dans le VBA et j'ai créer ce macro. dans excel 2007

Par contre, la copie fonctionne mais lorsque je rajoute les "if" cela ne fonctionne plus


Sub LACEY()

Dim Source As Worksheet
Dim target As Worksheet
' Change worksheet designations as needed
Set Source = ActiveWorkbook.Worksheets("Shipping List")
Set Tarket = ActiveWorkbook.Worksheets("LACEY")


' Only if they have a number in the cell
If Worksheets("Shipping List").Range("N12:N1519").Value > 0 Then


Also

' Only need lacey active, DO NOT COPY if cell indicate "N/A"
If Worksheets("Shipping List").Cells("E12:E1519") = ("CAP" Or "USA" Or "SPF" Or "LAM" Or LVL) Then


'Range.Copy Shipping list to Lacey
Worksheets("Shipping List").Range("H12:H1519").Copy Worksheets("LACEY").Range("C16")
Worksheets("Shipping List").Range("I12:I1519").Copy Worksheets("LACEY").Range("D16")
Worksheets("Shipping List").Range("E12:E1519").Copy Worksheets("LACEY").Range("B16")

'Multiply Worksheets("Shipping List").Range("I12:I1519") by Worksheets("Shipping List").Range("N12:N1519")


End If

End Sub
 
Solution
Bonjour à toutes & à tous, bonjour @Carolinebd
Je t'ai mis en pièce jointe une version avec des codes commentés qui prennent en compte ta nouvelle demande (mettre des 1 en colonne A).

Il y a 2 versions de la macro :
  • Une qui recopie les cellules avec leur format
  • Une qui ne transfère que les valeurs
Tu verras le temps d'exécution de la 2ième n'a rien à voir avec celui de la 1ère.

Par contre, je ne comprends pas à quoi sert le "I".
Et bien il sert à changer la ligne ou l'on copie les données (à chaque fois que l'on copie une ligne on incrémente i pour, la fois suivante, écrire sur la ligne du dessous.)

À bientôt
Merci j'avais tenté d'intégrer la solution à mon VBA et la ligne
NbL = UBound(Résultats, 2) 'Nbre de lignes = dimension 2 du tableau Résultats
Ne fonctionne pas

J'ai retenté en utilisant directement votre solution modifié en post #14 et ça ne fonctionne pas non plus
Est-ce parce que je décale mon tableau?

Exemple les résultats doivent ce placer selon le rgcible (N23)
 
Re
Peux-tu m'envoyer la macro et le message d'erreur (capture d'écran)
A+
PS : je retournerai à mon PC tout à l'heure et j'essayerai avec ma version 2007
Le fichier est trop volumineux pour que je sois capable de vous l'envoyer mais voilà
Je n'ai pas pour l'instant retravailler la dernière macro pour l'adapter car je suis sur une autre mais j'ai pris le temps de changer les Rgsource et Rgcible.
Vous pourrez constater que le bouton load 1 et load 2 a fonctionné à merveille avec votre toute première solutions mais rendu au 3e bouton celà ne veux plus.

Votre aide est très apprécié

1733426477214.png





1733426521056.png
1733426582044.png
1733426615935.png
 
Re je crois que j'ai une idée de ce qui se passe :
Aucune donnée ne correspond au critères d'extraction et Résultat n'est pas redimensionné !
Ahlala je suis désolé de vous avoir fait perdre votre temps.
Je n'y avais pas pensé mais c'est exactement celà.
J'ai tellement tenter de trouver une solution avant de vous contacter et je n'ai jamias pensé à celà.
Je viens de le tester en remplissant des donner et cela fonctionne.
Je vous remercie.
Et désolé encore
 
Re et re,
il faut tester avant la ligne qui contient "NbL=Ubound(Résultats,2)" si i n'est pas nul avant de tenter de faire la transposition :
VB:
If i = 0 then
    MsgBox "Aucune ligne ne correspond aux critères"
    Exit sub
end if

Vérifie tes données !
À bientôt
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

W
Réponses
7
Affichages
2 K
W
Retour