copier coller une colonne avec une condition
Le
joseph84

Bonjour tout le monde
je voudrais copier coller une colonne avec une codition je m explique
je voudrais copier une colonne qui se trouve dans un autre fichier
mais pas toute la colonne juste les enregistrement qui commence par
une lettre
la colonne source se trouve dans la A la meme chose pour la colonne
destination
merci
je voudrais copier coller une colonne avec une codition je m explique
je voudrais copier une colonne qui se trouve dans un autre fichier
mais pas toute la colonne juste les enregistrement qui commence par
une lettre
la colonne source se trouve dans la A la meme chose pour la colonne
destination
merci
Sub CopieConditionnelle()
Dim c As Range, ShSource As Worksheet, WBSource As Workbook
Dim ShCible As Worksheet, WBCible As Workbook
Dim Ligne As Long
Workbooks.Open "c:temp" & "FichierSource.xls"
Set WBSource = ActiveWorkbook
Set ShSource = WBSource.Sheets("FeuilleSource")
Workbooks.Open "c:temp" & "FichierCible.xls"
Set ShCible = ActiveWorkbook.Sheets("FeuilleCible")
With ShSource
For Each c In .Range(.[A1], .Cells(Rows.Count, 1).End(xlUp))
If Left(c.Value, 1) = "A" Then
Ligne = Ligne + 1
c.Copy ShCible.Cells(Ligne, 1)
End If
Next
End With
End Sub
A adapter avec tes noms de fichiers, de feuilles et la lettre à tester.
Note que le test distingue les majuscules des miniscules.
Cordialement.
Daniel
mais il n y a pas une solution pour que la condition detecte tout les
lettres de l alphabet sans qu on les nomes
merci
On 2 juin, 13:48, DanielCo
Regarde le fil intitulé :" verfier la presence d une lettre de l
alphabet dans une plage de cellule" initié par joseph84 du 30/05/2011
15:05:36.
Daniel
merci Daniel pour ton aide
mais malheureusement c est ca que je veux j
je voudrais que la macro verifie si l enregistrement commence par une
lettre si oui il copie l enregistrement et le colle sur la colonne
destination
merci
On 2 juin, 14:07, DanielCo
c'est une cellule :
Sub CopieConditionnelle()
Dim c As Range, ShSource As Worksheet, WBSource As Workbook
Dim ShCible As Worksheet, WBCible As Workbook
Dim Ligne As Long
Workbooks.Open "c:temp" & "FichierSource.xls"
Set WBSource = ActiveWorkbook
Set ShSource = WBSource.Sheets("FeuilleSource")
Workbooks.Open "c:temp" & "FichierCible.xls"
Set ShCible = ActiveWorkbook.Sheets("FeuilleCible")
With ShSource
For Each c In .Range(.[A1], .Cells(Rows.Count, 1).End(xlUp))
If UCase(Left(c.Value, 1)) <= "z" And _
UCase(Left(c.Value, 1)) >= "a" Then
Ligne = Ligne + 1
c.Copy ShCible.Cells(Ligne, 1)
End If
Next
End With
End Sub
Daniel
Daniel
en fait le fihcier cible c est lui qui va contenir la macro
On 3 juin, 10:11, DanielCo
Sub CopieConditionnelle()
Dim c As Range, ShSource As Worksheet, WBSource As Workbook
Dim ShCible As Worksheet, WBCible As Workbook
Dim Ligne As Long
Set ShCible = ThisWorkbook.Sheets("FeuilleCible")
Workbooks.Open "c:temp" & "FichierSource.xls"
Set WBSource = ActiveWorkbook
Set ShSource = WBSource.Sheets("FeuilleSource")
With ShSource
For Each c In .Range(.[A1], .Cells(Rows.Count, 1).End(xlUp))
If LCase(Left(c.Value, 1)) <= "z" And _
LCase(Left(c.Value, 1)) >= "a" Then
Ligne = Ligne + 1
c.Copy ShCible.Cells(Ligne, 1)
End If
Next
End With
End Sub
Daniel