Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Création colonnes en fonction de la valeur d'une celulle en macroVBA

  • Initiateur de la discussion Initiateur de la discussion Marie1212
  • Date de début Date de début

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 !

M

Marie1212

Guest
C'est encore moi !

J'ai de nouveau un petit soucis. Je souhaite qu'excel m'insère automatiquement le nombre de colonnes qui sera inscrit en valeur dans une cellule.
Exemple: Il y a le chiffre 42 dans une cellule, je veux qu'excel par VBA intègre 42 colonnes.

Merci par avance

Marie
 
Re : Création colonnes en fonction de la valeur d'une celulle en macroVBA

Re ;-)

pour répondre à la question: ci dessous un code pour exemple
Code:
Sub Macro2()
'
' Macro2 Macro
'

'
    'récupère le nombre de colonnes à inserer
    NbColo = [A1]
    
    'insere NbColo colonne à partir de la colonne C (3).. par exemple
    Range(Columns(3), Columns(3 + NbColo)).Select
    Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
End Sub

par contre, il faudrait que dans tes prochains post, tu mettes un fichier exemple: plus facile pour répondre et identifier ton besoin

et tu peux rester dans le meme post s'il s'agit du meme projet. ca permettra d'avoir l'historique de ton besoin

PS: pour ce code: j'ai simplement utilisé l'enregistreur de macro et adapté légèrment
je te conseille d'essayer. j'ai souvent découvert que la réponse était bien plus simple que ce que je pensais ;-)
 
Re : Création colonnes en fonction de la valeur d'une celulle en macroVBA

Bonjour Marie, vgendron 🙂

Un autre exemple

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim NbCol, i As Integer

Application.EnableEvents = False
Application.ScreenUpdating = False
NbCol = Range("a2").value
If Range("a2") <> "" Then
Columns("E:E").Select    'Colonne à partir où celles-ci sont inserées. A modifier
For i = 1 To NbCol
Selection.Insert Shift:=xlToRight
Next i
End If
Application.EnableEvents = True
End Sub



A+ 😎
 
Dernière édition:
Re : Création colonnes en fonction de la valeur d'une celulle en macroVBA

Bonjour Marie1212, vgendron, Lone-wolf,

une autre solution, à adapter à la réalité du classeur.

Code:
Sub LaMacroquiInseredesColonnes()
 With Worksheets("Feuil2")
 .Range("F1").Resize(, .Range("B3").Value).EntireColumn.Insert Shift:=xlToRight
 End With
End Sub

.Range("F1") = Cellule de la colonne à partir de laquelle insérer
.Range("B3") = Cellule qui contient le Nb de colonnes à rajouter

A+
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…