Décalage de cellule
thomhcv59
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
michel_m Messages postés 16602 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 16602 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour tous le monde ,
Etant débutant en vba ,
j'ai une plage de cellule A2:A6 dans la Feuil1 que j'aimerai copier dans la Feuil2 en B2:B6
mais si B2:B6 est non-vide alors il copie la plage vers la droite donc en C2:C6
Je pense qu'il faut utiliser range et offset mais je ne sais pas comment m'y prendre
Avez-vous une idée ?
Merci d'avance pour vos réponses
Thomas
Etant débutant en vba ,
j'ai une plage de cellule A2:A6 dans la Feuil1 que j'aimerai copier dans la Feuil2 en B2:B6
mais si B2:B6 est non-vide alors il copie la plage vers la droite donc en C2:C6
Je pense qu'il faut utiliser range et offset mais je ne sais pas comment m'y prendre
Avez-vous une idée ?
Merci d'avance pour vos réponses
Thomas
A voir également:
- Décalage de cellule
- Excel cellule couleur si condition texte - Guide
- Proteger cellule excel - Guide
- Aller à la ligne dans une cellule excel - Guide
- Si cellule contient texte alors ✓ - Forum Excel
- Comment colorer une cellule excel en fonction du contenu d'une autre cellule ✓ - Forum Excel
2 réponses
Bonjour
1 seule fois ou "ainsi de suite" ?
c.a.d. : si c2:c6 non vide alors copier en D2:D6 etc.
si 1 seule fois
Michel
1 seule fois ou "ainsi de suite" ?
c.a.d. : si c2:c6 non vide alors copier en D2:D6 etc.
si 1 seule fois
Option Explicit
Sub decaler_coller()
Dim source()
source = Sheets(1).Range("A2:A6").Value
With Sheets(2)
If Application.CountA(.Range("B2:B6")) = 0 Then
.Range("B2:B6") = source
Else
.Range("C2:C6") = source
End If
End With
End Sub
Michel
Bonjour Michel ,
Excuse moi pour le retard
c'est ainsi de suite
Thom
Excuse moi pour le retard
c'est ainsi de suite
Thom
Vite fait avant la soupe version "ainsi de suite"
Option Explicit
Sub hhhh()
Dim Col As Integer, Bloc()
Bloc = Sheets(1).Range("A2:A6").Value
With Sheets(2)
Col = 2
While Application.CountA(.Range(.Cells(2, Col), .Cells(6, Col))) > 0
Col = Col + 1
Wend
.Range(.Cells(2, Col), .Cells(6, Col)) = Bloc
.Select
End With
End Sub