VBA collage spécial valeur

Vincent_38

XLDnaute Nouveau
Bonjour à tous,

J'ai élaboré une petite macro de consolidation qui me permet d'aller chercher des informations dans une multitude de fichiers et de les coller dans une base commune.

Je n'ai absolument aucune connaissance en VBA et le code qui suit est du bricolage.

Je cherche donc, au lieu d'un simple copier/coller, faire un collage des valeurs... et je n'y arrive pas pour le moment.

Le code :
Code:
Sub macro_exemple_2()
'
    
ReadOnly = True 'active le mode lecture seule
    Workbooks.Open Filename:= _
        "ADRESSE\AA 2013.xlsm" 'ouvre le fichier AA
        
Worksheets("base N").Unprotect ("XX") 'enlève le MDP

    
 Dim Pop As CommandBarPopup
    Worksheets("base N").Activate
    Set Pop = CommandBars("Data").Controls("&Filtrer")
    If Pop.Controls("&Afficher tout").Enabled = True Then
        Worksheets("base N").ShowAllData
    End If 'enlève les filtres en forçant l'affichage de toutes les données
    
Dim source As Workbook, destin As Workbook, derlig As Long
Set source = Workbooks("AA 2013") 'définition du classeur source
Set destin = Workbooks("BB consolidation") 'définition du classeur cible
source.Activate
derlig = source.Sheets("base N").[A65536].End(xlUp).Row 'sélectionner toutes les lignes de la base source à partir de la dernière ligne non vide
source.Sheets("base N").Range("A2:W" & derlig).Copy destin.Sheets("DR base N").Range("A65536").End(xlUp).Offset(1, 0) 'les colle dans la première ligne vide du fichier destinataire



Worksheets("base N").Protect ("XX") 'remet le MDP

Workbooks("AA 2013").Close False
Application.DisplayAlerts = False 'quitte le classe source et empêche la sauvegarde ainsi que les messages d'erreur


'

End Sub

J'ai essayé de spécificer des conditions après le .copy, comme cela :
Code:
With Sheets("base").Range("b65536").End(xlUp)
            .PasteSpecial Paste:=xlPasteValues
            .Application.CutCopyMode = False
        End With

mais cela ne marche pas. Je suis tout à fait conscient qu'il faudra peut être changer la fonction, celle que j'utilise n'est sûrement pas la plus adaptée.

Merci d'avance pour vos lumières.
 

Vincent_38

XLDnaute Nouveau
Re : VBA collage spécial valeur

Bonjour Titi, le forum,

Je veux copier les valeurs de toutes les lignes jusqu'à la 2ème non comprise à partir de la dernière ligne non vide et les coller (collage spécial valeur) dans la première ligne vide d'un second fichier.

J'ai mis une pièce-jointe, très simple, qui reprend la structure des fichiers source, et j'espère que mes explications sont claires.
 

Pièces jointes

  • Exemple_collage_special.xlsx
    8.8 KB · Affichages: 62

Discussions similaires

Réponses
7
Affichages
311
Réponses
7
Affichages
419

Statistiques des forums

Discussions
312 047
Messages
2 084 862
Membres
102 688
dernier inscrit
Biquet78