inserer les cellules copiées à Conditioni VBA ?

logman

XLDnaute Nouveau
bonjour
débutant en VBA j'aimerais savoir si il était possible d'inséré les cellules copiées sous condition, SI par exemple dans la colonne A:A se trouve le mot total, on insère en dessous les cellules copiées ?


Merci d'avance
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : inserer les cellules copiées à Conditioni VBA ?

Bonjour logman,
j'attends vos réponses avec impatience :)
ça, c'est un bon moyen de ne jamais avoir la réponse !!!!



Pour répondre à la question: Oui, c'est possible
mais pour ne pas perdre mon temps à créer un fichier, j'attends (nous attendons) que tu joignes le tien
............... et que tu re-précises la question


à+
Philippe
 

logman

XLDnaute Nouveau
Re : inserer les cellules copiées à Conditioni VBA ?

voici ci joint le fichier j'aimerais que la VBA insère la zone jaune sous le total et que ça décalle les cellules vers le bas.

Voilà merci d'avance
 

Pièces jointes

  • test.xls
    17.5 KB · Affichages: 58
  • test.xls
    17.5 KB · Affichages: 60
  • test.xls
    17.5 KB · Affichages: 59

logman

XLDnaute Nouveau
Re : inserer les cellules copiées à Conditioni VBA ?

Voici mon début de code:

sub test1()



If Range("A") <> "Total" Then
Range("A1:B2").Select
Selection.Copy
Sheets("Feuil1").Select
Selection.Insert Shift:=xlDown
End Sub

je bloque :(
 

Caillou

XLDnaute Impliqué
Re : inserer les cellules copiées à Conditioni VBA ?

Bonjour,

En fait, tout ca n'est pas très clair!
- Quelles cellules doivent être copiées ?
- Ou doivent-elles être collées (il peut y avoir plusieurs fois le mot total dans la colonne A) ?

Caillou
 

Caillou

XLDnaute Impliqué
Re : inserer les cellules copiées à Conditioni VBA ?

re,

voici un code qui copie la plage A1:B2 et l'insère après le dernier "Total" de la colonne A (s'il existe)
Code:
Sub Macro1()
On Error Resume Next
    Range("A1:B2").Copy
    
    Columns("A:A").Select
    Range("A" & Rows.Count).Activate
    Selection.Find(What:="Total", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlPrevious, _
        MatchCase:=False, SearchFormat:=False).Offset(1, 0).Select
    Selection.Insert Shift:=xlDown
    Application.CutCopyMode = False
End Sub
Caillou
 

Caillou

XLDnaute Impliqué
Re : inserer les cellules copiées à Conditioni VBA ?

re,

Regardes ce code :
Attention : Copie sans insertion !
Code:
Sub Macro1()
On Error Resume Next

  Dim c As Range
  Range("A1:B2").Copy
  
  With Columns("A:A")
    Set c = .Find("Total")
    If Not c Is Nothing Then
      adres1 = c.Address
      Do
        c.Offset(1, 0).Select
        ActiveCell.PasteSpecial
        Set c = .FindNext(c)
      Loop While Not c Is Nothing And c.Address <> adres1
    End If
  End With
  Application.CutCopyMode = False
End Sub
Caillou
 

Caillou

XLDnaute Impliqué
Re : inserer les cellules copiées à Conditioni VBA ?

et bien tu fais un merge des 2 macros que je t'ai envoyé, car la 1ere fait une insertion et la deuxième une boucle sur la recherche de total !
avec ça, tu devrais pouvoir y arriver
(à mon avis il va falloir placer le copier dans la boucle)
j'aurais peut être 2 minutes de dispo tout à l'heure
caillou
 

Caillou

XLDnaute Impliqué
Re : inserer les cellules copiées à Conditioni VBA ?

re, re, re,

Essayes ceci,
Code:
Sub Macro1()
On Error Resume Next

  Dim c As Range
  
  With Columns("A:A")
    Set c = .Find("Total")
    If Not c Is Nothing Then
      adres1 = c.Address
      Do
        Range("A1:B2").Copy
        c.Offset(1, 0).Select
        ActiveCell.Insert
        Set c = .FindNext(c)
      Loop While Not c Is Nothing And c.Address <> adres1
    End If
  End With
  Application.CutCopyMode = False
End Sub
Caillou
 

Discussions similaires

Statistiques des forums

Discussions
312 229
Messages
2 086 422
Membres
103 206
dernier inscrit
diambote