[VBA] Indiquer l'emplacement où coller une sélection par un mot-clé

nat54

XLDnaute Barbatruc
Bonjour,

Voilà je copie une partie d'un autre fichier, je souhaite coller cette sélection
2 cellules à droite de la cellule où est inscrit ABScollage en colonne A.
Comment préciser cela en VBA ?

Code:
Sub Construire_fiches()
FinTableauMapping = Sheets("Mapping").Range("A" & "65535").End(xlUp).Row
For i = 2 To FinTableauMapping
CodePole = Workbooks("Fiches_synthétiques_DRH_par_pôle.xls").Sheets("Mapping").Range("a" & i).Value
    Windows("Abs_longues_prev_pour_fiche_synth.xls").Activate
    Selection.AutoFilter Field:=1, Criteria1:=CodePole  'field 1 = colonne A, pôle XXXX
    Range("c2").Select
    Range(Selection, Selection.End(xlToRight)).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Windows("Fiches_synthétiques_DRH_par_pôle.xls").Activate
    ????????????????
Next
End Sub


Merci d'avance de votre aide,

Nat
 

nat54

XLDnaute Barbatruc
Re : [VBA] Indiquer l'emplacement où coller une sélection par un mot-clé

Bonjour,

Oui mais il faut d'abord trouver la cellule "ABScollage" et cela je ne sais pas faire..
(car selon mes onglets la cellule sera en A10 --> C10 ou en A24 --> C24..)
 

leop93

XLDnaute Occasionnel
Re : [VBA] Indiquer l'emplacement où coller une sélection par un mot-clé

Avec une seconde fonction de recherche pour le texte ABScollage avec une sélection de cette cellule puis le Offset.

Je donne des pistes, mais je débute seulement Excel et le VBA (moins de 3 semaines) donc je ne saurai pas te guider à la perfection.
 

VDAVID

XLDnaute Impliqué
Re : [VBA] Indiquer l'emplacement où coller une sélection par un mot-clé

Bonjour Nat54,

Peut-être à la suite de ton code:

Code:
With ActiveSheet
.Cells.Find("ABScollage",,xlValues,xlWHole).Offset(0,2).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
End with

Bonne journée !
 

leop93

XLDnaute Occasionnel
Re : [VBA] Indiquer l'emplacement où coller une sélection par un mot-clé

Ah d'accord.

J'avais aidé quelqu'un pour un problème similaire, voici le code qu'il a utilisé au final, à adapter pour ton fichier:

Code:
Private Sub CommandButton9_Click()
'Bouton de commande "Filtrer"

'Déclaration des variables
Dim i As Long
Dim j As Long
Dim plage As Range


Application.ScreenUpdating = False

'PROGRAMME réaliser par le bouton Filtre
j = 1
For i = 13 To [Q20000].End(xlUp).Row
    If Cells(i, 17).Value = "ABScollage" Then
        Set plage = Range("A" & i & ":P" & i)
        plage.Copy
        Sheets("Résultat").Select
        ActiveSheet.Cells(j, 1).Select
        ActiveSheet.Paste
        j = j + 1
    End If
Next i
 
Application.ScreenUpdating = True
End Sub

Si ça peut le faire... :eek:
 

nat54

XLDnaute Barbatruc
Re : [VBA] Indiquer l'emplacement où coller une sélection par un mot-clé

Bonjour VDAVID,

Wow ca marche, ça sélectionne bien la bonne cellule en colonne C.

Par contre j'ai un souci dans le copier/coller après le filtre car il prend une plage bien plus grande (avec des lignes vierges..)
au lieu de prendre uniquement dans le fichier source les lignes filtrées
mon
Code:
Range(Selection, Selection.End(xlToRight)).Select
    Range(Selection, Selection.End(xlDown)).Select
ne marcherait-il pas ?

Comment faire dans ce cas ?
 

VDAVID

XLDnaute Impliqué
Re : [VBA] Indiquer l'emplacement où coller une sélection par un mot-clé

Re Nat54, Leop93,

Si j'ai bien compris tu veux sélectionner un tableau qui commence en C2, mais de taille variable.

Tu peux peut-être essayer, à la place de :

Code:
Range(Selection, Selection.End(xlToRight)).Select
    Range(Selection, Selection.End(xlDown)).Select

,Ceci:

Code:
Range(Cells(2, 3), Cells(Cells(65536, 3).End(xlUp).Row, Cells(2, 256).End(xlToLeft).Column)).Copy

Si ça ne marche pas, il faudrait peut-être mettre un fichier exemple pour plus de précisions :cool:
 

Discussions similaires

Statistiques des forums

Discussions
312 345
Messages
2 087 492
Membres
103 559
dernier inscrit
pascalbill