Macro pour insérer une cellule

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

antoine340000

XLDnaute Nouveau
Bonjour,

Je recherche une macro qui me permettrait d'insérer une cellule avant une cellule qui est au format date ; Exemple :
cellule A1 : 0349382930
cellule A2 : 05/11/2009
cellule A3 : 19/02/1997
cellule A4 : 0539483727
cellule A5 : 23/07/1933
Il faudrait une macro qui me permette d'insérer une cellule à gauche des cellules A2, A3, A5 uniquement (mon fichier compte évidemment bien plus que 5 cellules)

Merci de vos réponses!
 
Re : Macro pour insérer une cellule

Bonjour à tous
pour 1 colonne
Code:
Columns("A:A").insert sihft:=xltoright,copyorigin:=xlformatfromleftorabove
pour 1 range
Code:
range("A11").insert sihft:=xltoright,copyorigin:=xlformatfromleftorabove
 
Re : Macro pour insérer une cellule

Merci de la réponse mais ce n'est pas tout à fait ce que je demandais! je veux insérer une cellule devant une cellule qui a un format date :
si j'ai A1 = 23/09/2012 je veux insérer une cellule devant A1. Par contre si A1=03202939839 là je ne veux rien insérer.
Ou alors je n'ai pas bien compris le code! c'est possible aussi!
 
Re : Macro pour insérer une cellule

Bonjour antoine340000, jpb388,

Il faut ajouter une condition pour vérifier le contenu de la cellule :

Code:
Private Sub CommandButton1_Click()
For Each cel In Range("A:A").SpecialCells(xlCellTypeConstants)
  If IsDate(cel.Value) Then cel.Insert shift:=xlToRight, copyorigin:=xlFormatFromLeftOrAbove
Next
End Sub
Voir fichier ci-joint.

Bon dimanche.

Cordialement.
 

Pièces jointes

Re : Macro pour insérer une cellule

RE

Petit ajout pour améliorer la rapidité d'exécution :

Code:
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
For Each cel In Range("A:A").SpecialCells(xlCellTypeConstants)
  If IsDate(cel.Value) Then cel.Insert shift:=xlToRight, copyorigin:=xlFormatFromLeftOrAbove
Next
Application.ScreenUpdating = True
End Sub
Cordialement.
 
Re : Macro pour insérer une cellule

Bonjour antoine340000, jpb388,

Il faut ajouter une condition pour vérifier le contenu de la cellule :

Code:
Private Sub CommandButton1_Click()
For Each cel In Range("A:A").SpecialCells(xlCellTypeConstants)
  If IsDate(cel.Value) Then cel.Insert shift:=xlToRight, copyorigin:=xlFormatFromLeftOrAbove
Next
End Sub
Voir fichier ci-joint.

Bon dimanche.

Cordialement.

Super ça fonctionne très bien! Merci beaucoup à tous
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
6
Affichages
303
Réponses
5
Affichages
472
Retour