Maccro ou fonction Si

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

I

ivboole

Guest
Bonjour,

J'ai crée une base de données avec excel.

J'aimerai mettre en place une solution que me permettra d'avoir automatiquement:

ex: Si A5 <> A4 alors créer une ligne horizontale au-dessus de A5. Et si A5 = A4 ne rien faire.

Ainsi pour toute les communes que je rajouterai.

ex:

A

4 Ixelles

5 Uccle
6 Uccle
7 Uccle
8 Uccle

9 Auderghem
11 Auderghem
12 Auderghem

13 .....
14 ....
 

Pièces jointes

Re : Maccro ou fonction Si

Essaye cette macro.

Code:
Sub Macro1()
    Dim nbrLignes As Long
    Dim y As Long
        
    nbrLignes = Cells(Rows.Count, 1).End(xlUp).Row
    For y = nbrLignes To 4 Step -1
        If Cells(y, 1) <> Cells(y - 1, 1) Then
            Rows(y & ":" & y).Select
            Selection.Insert Shift:=xlDown
        End If
    Next y
End Sub

Oups ! CB60 percussion. Désolé.
 
Re : Maccro ou fonction Si

Je vous remercie pour vos macros. Elles fonctionnent toutes. Toutefois, lors d'une première subdivision elle m'insère bien la ligne horizontale. Le problème est que quand je rajoute des nouvelles données(communes) à la suite dans la colonne A:

OK
1) elle créer bien une subdivision avec la nouvelle donnée

Problème
2) elle me recrée une ligne sur la ligne qui avait été créer la fois précédente.


En fait, je voudrai une fois qu' une ligne de séparation créée, celle-ci soit statique. L'idéal serai que si:

ex:

A18=A17 donc pas de ligne et A19<>A18 donc ligne. Également, A20 <> A19 donc ligne entre les deux (Mais) pas de ligne supplémentaire entre A19 et A18


A17----->créée 25/10/12
A18 ----> créée 25/10/12

A19---->créée 26/10/12

A20----> créée 27/10/12


Est ce possible??

Par contre, je ne sais pas si l'explication du problème est assez claire...

Sorry...
 
Re : Maccro ou fonction Si

Bonjour
Test ça:

Sub insertion()
Dim choix
For choix = Cells(Rows.Count, 1).End(xlUp).Row To 5 Step -1
If Range("A" & choix).Value <> "" Then
If Range("A" & choix) <> Range("A" & choix - 1) And Range("A" & choix - 1).Value <> "" Then Range("A" & choix).EntireRow.Insert
End If
Next choix
End Sub
 
Re : Maccro ou fonction Si

Alors, avec 2 passages, ça devrait marcher.

Code:
Option Explicit

Sub Macro1()
    Dim nbrLignes As Long
    Dim y As Long
       
    nbrLignes = Cells(Rows.Count, 1).End(xlUp).Row
    For y = nbrLignes To 3 Step -1
        If Cells(y, 1) = "" Then
            Rows(y & ":" & y).Select
            Selection.Delete Shift:=xlUp
        End If
    Next y
    
    nbrLignes = Cells(Rows.Count, 1).End(xlUp).Row
    For y = nbrLignes To 4 Step -1
        If Cells(y, 1) <> Cells(y - 1, 1) Then
            Rows(y & ":" & y).Select
            Selection.Insert Shift:=xlDown
        End If
    Next y
End Sub
 
- 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

Réponses
1
Affichages
723
Réponses
10
Affichages
974
Réponses
3
Affichages
757
  • Question Question
Microsoft 365 Code VBA
Réponses
2
Affichages
596
L
Réponses
9
Affichages
1 K
Retour