Cases a cocher

kaki31

XLDnaute Occasionnel
Bonsoir tout le monde

J'aimerais savoir comment faire pour afficher les cases a cocher sans laisser d'interlignes vides.

Merci :)
 

Pièces jointes

  • Casesacocher.xls
    14.5 KB · Affichages: 56
  • Casesacocher.xls
    14.5 KB · Affichages: 65
  • Casesacocher.xls
    14.5 KB · Affichages: 63

Papou-net

XLDnaute Barbatruc
Re : Cases a cocher

Bonjour kaki31, le Forum,

Par formules je ne sais pas le faire, alors je t'envoie une solution par macro.

La colonne D affiche la liste des villes cochées selon l'ordre des cases à cocher et non selon l'ordre de sélection.

Espérant que cette solution te convienne (avec un sourire).

Cordialement.
 

Pièces jointes

  • Copie de Casesacocher.xls
    25 KB · Affichages: 56
  • Copie de Casesacocher.xls
    25 KB · Affichages: 57
  • Copie de Casesacocher.xls
    25 KB · Affichages: 56

laetitia90

XLDnaute Barbatruc
Re : Cases a cocher

bonjour kaki31 , l'ami Papou:):)

par code on peut simplifier

Code:
Sub ListeVilles()
 Dim i As CheckBox
 Range("D:D").Clear
 For Each i In Feuil1.CheckBoxes
 If i.Value = xlOn Then _
 Range("d" & Rows.Count).End(xlUp)(2) = i.Caption
 Next i
End Sub

trop gentil Papou:):):):):) bisous
 
Dernière édition:

Papou-net

XLDnaute Barbatruc
Re : Cases a cocher

RE Laetitia,

Ton code est effectivement plus simple : comme quoi, l'esprit féminin a aussi ses qualités (je plaisante bien sûr).

A ma décharge, je n'utilise que très rarement, et pour ainsi dire jamais, les contrôles de formulaire. Je préfère, et de loin, les objets ActiveX qui cadrent mieux dans l'esprit VBA.

Bises.
 

kaki31

XLDnaute Occasionnel
Re : Cases a cocher

Bonsoir;
Merci Papou-net,laetitia90

En essayant d'adapter ces codes je me suis heurter a un petit problème:


en D10 j'ai du texte qui lui aussi doit suivre les cases a cocher

exp: si dernière case D3 alors texte D4, si dernière case D4 alors texte D5,si dernière case D5 alors texte D6, etc ...


Merci
:)
 
Dernière édition:

Papou-net

XLDnaute Barbatruc
Re : Cases a cocher

Bonsoir kaki31,

Voici une copie avec la macro modifiée.

J'ai repris l'exemple avec le code de Laetitia (que je salue) et qui est plus concis que le mien.

Si ton texte est constant, tu n'as qu'à remplacer "Exemple de texte" par ce texte. Dans le cas contraire, je manque d'éléments pour te proposer une solution.

Bonne soirée.

Cordialement.
 

Pièces jointes

  • Copie de Casesacocher.xls
    25 KB · Affichages: 42
  • Copie de Casesacocher.xls
    25 KB · Affichages: 44
  • Copie de Casesacocher.xls
    25 KB · Affichages: 44

Papou-net

XLDnaute Barbatruc
Re : Cases a cocher

C'est presque ça,

Le texte en B10 doit se mettre sur la deuxième ligne qui suit le dernier texte de la colonne D,

Merci.

:)

RE :

OK, c'est encore plus simple :

Code:
Sub ListeVilles()
With Sheets("Feuil1")
  cel = ActiveCell.Address
  .Range("D:D").ClearContents
  lg = 2
  For Each ctl In .Shapes
    If ctl.Name Like "Check*" Then
      If .Range(ctl.ControlFormat.LinkedCell).Value = True Then
        ctl.Select
        .Cells(lg, 4) = Selection.Characters.Text
        lg = lg + 1
      End If
    End If
  Next
  .Cells(lg + 1, 4) = .Range("B10")
  .Range(cel).Select
End With
Application.ScreenUpdating = True
End Sub

Cordialement.
 

Efgé

XLDnaute Barbatruc
Re : Cases a cocher

Bonjour kaki31, Bonjour Papou-net :), Bonjour laetitia90 :),
Je suis abonné à ce fil depuis le début car je me doutais que j'allais en apprendre sur le maniement des ChekBox.
En regardant le dernier code de Papou-net je viens de découvrir quelque chose, donc je vous le post:
On peut remplacer
VB:
ctl.Select
        .Cells(lg, 4) = Selection.Characters.Text
Par
VB:
.Cells(lg, 4) = ctl.OLEFormat.Object.Text

C'est juste pour partager ma "découverte" :D et dans le cadre du M.I.A.S "Mouvement Internationnal Anti Select" :D:D

Cordialement
 

Papou-net

XLDnaute Barbatruc
Re : Cases a cocher

C'est juste pour partager ma "découverte" :D et dans le cadre du M.I.A.S "Mouvement Internationnal Anti Select"

Merci à toi Efgé,

Je partage en effet ton point de vus, étant moi-même un adepte du "non select".

Mais comme je le disais plus haut, je ne suis pas un utilisateur des contrôles de la barre Formulaires que je trouve compliqués à utiliser avec VB, et pour lesquels on trouve peu de documentation. Je préfère utiliser les contrôles ActiveX qui sont plus en adéquation avec le langage des macros.

Pour rappel, j'ai récupéré ce code écrit par Laetitia que je trouve plus concis que celui que j'avais moi-même établi.

Mais ça ne change rien, c'est toujours bon à savoir.

Amicalement.
 

Membres actuellement en ligne

Statistiques des forums

Discussions
312 489
Messages
2 088 855
Membres
103 977
dernier inscrit
Hermet