Déplacer une partie d'une colonne

  • Initiateur de la discussion Initiateur de la discussion amiel
  • 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 !

amiel

XLDnaute Nouveau
Bonjour à tous

Voilà je cherche en VBA comment je peux déplacer une partie d'une colonne pour la faire descendre une cellule en dessous.

ex :

A1 = 1
A2 = 2
A3 = 4
A4 = 5
A5 = 6

Dans mon code je récupère 3. et je voudrais faire

A1 = 1
A2 = 2
A3 = 3
A4 = 4
A5 = 5
A6 = 6

donc mettre une donnée dans une cellule et descendre le reste des donnée.

Merci à tous et aux réponses que vous pourriez apporter à se problème.
 
Re : Déplacer une partie d'une colonne

Bonjour amiel,
Une proposition, mais je pense que le problème est plus complexe que la demande...
Code:
[COLOR=blue]Sub[/COLOR] Insertion()
Var = InputBox("Saisir la variable")
[COLOR=blue]With[/COLOR] Sheets("Feuil1")
    [COLOR=blue]For[/COLOR] i = 1 [COLOR=blue]To[/COLOR] .Range("A" & Application.Rows.Count).End(xlUp).Row
        [COLOR=blue]If[/COLOR] .Cells(i, 1) = Var - 1 [COLOR=blue]Then[/COLOR]
            .Cells(i + 1, 1).Insert Shift:=xlDown
            .Cells(i + 1, 1) = Var
        [COLOR=blue]End If[/COLOR]
    [COLOR=blue]Next[/COLOR] i
[COLOR=blue]End With[/COLOR]
[COLOR=blue]End Sub[/COLOR]
Cordialement
 
Re : Déplacer une partie d'une colonne

Bonjour,

Bonjour, EFG 🙂

Autre solution, sans boucle :

Code:
Sub Insertion2()
Dim Var As Double
Dim Lig As Long
Var = InputBox("Saisir la variable")
With Sheets("Feuil1")
    Lig = Application.Match(Var, Columns(1), 1) + 1
    .Cells(Lig, 1).Insert Shift:=xlDown
    .Cells(Lig, 1) = Var
End With
End Sub

Bonne journée
 
Re : Déplacer une partie d'une colonne

RE,

Oui je ne pensais pas que le code serait aussi complexe (je ne suis qu'un petit codeur de rien du tout)


Code:
If X(a) > 0 Then
    
        If (E(0) < 2) Then
            
            If (Cells(C, 11) <> Cells(C - 1, 11)) Then
            
            Cells(C, 11) = Cells(N, 3)
            Cells(C, 12) = X(a)
            X(a) = X(a) - 1
            
            Else
            
            Colonne = Int(C / 3)
            ICI LE CODE POUR INSERER Cells(N, 3) dans Cells(Colonne,11) 
            X(a) = X(a) - 11
            
            End If
                   
        Else
        
        
        End If
   
   
   Else
   
    ActionTotal = ActionTotal + 1
    C = C - 1
       
   End If

En espérant cela plus compréhensible pour toi
 
Re : Déplacer une partie d'une colonne

Re amiel, Bonjour bhbh 🙂,
amiel, il serait plus simple d'envoyer un petit exemple, avec tout le code et quelques données. On ne pourra pas faire grand chose avec des bribes de codes.
A moins que Bhbh n'ai une boule de cristal, de mon coté les rûnes magiques du chaman ne trouvent rien 😀
Cordialement
 
Re : Déplacer une partie d'une colonne

RE

Bien j'envois le code complet.

Il y a pas mal de commentaire mais je n'ai pas mis l'algorithme au début.

Le principe est assez simple : mettre dans la colonne K l'ordre de mes Noms en fonction de deux variables.

Je suis rendu dans le cas où si un Nom apparait dans dans la cellule du dessus il faut qu'il soit mit en milieu de colonne K mais sans écrasé le Nom qui y est déja. en espérant que cela vous aide. (ne faite pas attention au bouton).
 

Pièces jointes

Re : Déplacer une partie d'une colonne

...Oui je ne pensais pas que le code serait aussi complexe (je ne suis qu'un petit codeur de rien du tout)...
😱.
Alors là, les triples tableaux VBA en double boucle piquée, dépassent et de loins mes connaissances. Je vais regarder comment ça marche et lorsque j'aurai compris, d'ici deux ou trois heures (jours, mois ?) je reviendrai.

Plus sérieusement je ne peux pas adapter ce code.Mais je suis certain que d'autres en seront capables.
Désolé.
Cordialement
 
Re : Déplacer une partie d'une colonne

RE,

Ce n'est pas grave Efgé, ceci est un code personnel et evidemment la pluparts des personnes du forum pose des questions XL pour du professionnel, merci quand même d'avoir essayer (c'est mieux que rien). Si quelqu'un à une idée ou besoin de précision n'hésitez pas.

Merci d'avance
 
Re : Déplacer une partie d'une colonne

Re
Bon je fais quand même une proposition:
Il faut limité l'action de la macro evennementielle à une plage de cellule(J'ai pris C3:H24) et utiliser la version de Bhbh qui sera plus rapide que ma boucle.
Je ne sait pas si le résultat correspond à la demande n'ayant pas compris l'utilisation de cette feuille.
Après je ne sais plus.
Bon courage
Cordialement
 

Pièces jointes

- 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

  • Question Question
Microsoft 365 Doublon
Réponses
4
Affichages
104
Réponses
3
Affichages
339
Réponses
10
Affichages
271
Réponses
4
Affichages
140
  • Question Question
Microsoft 365 Offset
Réponses
5
Affichages
653
Réponses
0
Affichages
346
Réponses
30
Affichages
449
Retour