je veux insere un colonne avec VBA sans écraser l'ancienne colonne. j'ai réalisé ce petit code qui permet d'importer un fichier csv et inserer une colonne au début de fichier mais il supprime la première colonne. Merci
Sub ImportCSV()
Application.ScreenUpdating = False
..........
F1.Select
[A1].EntireColumn.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
[B1].Resize(1467).Value = "Mai"
End Sub
(y'a plus d'sélection d'la cellule A1 ; et y'a plus d'boucle For p .. Next p)
Range("A1").Select
Selection.EntireColumn.Insert
For p = 1 To 1467
Cells(p, 2) = "Mai"
Next p
fonctionne très bien, cela ajoute une colonne en premier directement. Par contre la boucle For étant sur la cells(p,2), cela écrase bien la deuxième colonne soit en effet la première colonne de ton ancien tableau
le problème est surtout s'il fait un mixte des deux plutôt que d'utiliser que ta solution qui fait tout d'un coup
Car sa première boucle For ne fait pas du tout la même chose, c'est sur la colonne 2 que cela inscrit "mai" et pas la 1! avec son fichier on aurait plus de visibilité surtout qu'il répond