XL 2010 écriture d'un texte si case coché excel VBA

missymanioca

XLDnaute Nouveau
Bonjour,

Je suis actuellement en train de réaliser un formulaire, l'objectif est qu'à chaque fois que l'on remplisse ce formulaire, une macro copie colle toute les informations sur la ligne d'une autre feuille. Ma macro fonctionne pour le texte aucun soucis, mais je n'arrive pas à copier les informations des cases à cocher. J'ai fait ça :

If checkbox5.Value = True Then
Sheets("Bilan ECA").Select
Range("A2").Select
ActiveCell.FormulaR1C1 = "ECA"
Range("A3").Select
End If

L'objectif étant que si la case est coché ça m'écrive "ECA" dans la deuxième feuille. Si je ne met pas le "If checkbox" la formule fonctionne et écrit bien ECA dans la case que je souhaite.
Quelqu'un peut m'aider ?
 
Solution
Bonjour missymanioca, le fil,

je te laisse essayer ton nouveau "formulaire". :) (qui n'est pas un UserForm : c'est seulement sur la feuille de calcul)

pour tes 4 cases à cocher du "Type d'activité", regarde bien toutes les possibilités entre ces deux extrêmes : de 4 cases cochées à aucune case cochée ; tu l'savais pas, hein, que même dans Excel y'a Extrême Limite ! 😜

bien sûr, je ne parle pas seulement du cochage proprement dit, mais aussi du résultat obtenu en feuille "Bilan ECA", cellule A2.



code VBA du module "Feuille entretien" ...

patricktoulon

XLDnaute Barbatruc
Bonjour
histoire de mettre mon grain de sel
pas besoins d'activer la feuille ni la cellule d'ailleurs
Sheets("Bilan ECA").[A2]=application.rept( "ECA",Abs(checkbox5.Value)
ou bien encore
Sheets("Bilan ECA").[A2]=Left("ECA", len("ECA")*Abs(checkbox5.Value))

et j'en passe et des meilleures ;)
 

missymanioca

XLDnaute Nouveau
Bonjour à tous, merci beaucoup pour vos réponses rapide ! Et désolée pour le crossposting ...
J'ai essayé tout vos propositions mais ça ne fonctionne pas ...
Je ne comprend pas, quand je les exécute rien est écrit dans ma cellule A2 de ma feuille "Bilan ECA", pourtant ma case est bien cochée...

Sub Macro2()
If checkbox44 Then ['Bilan ECA'!A2] = "ECA"
End Sub

(Ma checkbox a changé de nom entre temps j'ai eu quelques déboires... )
 

soan

XLDnaute Barbatruc
Inactif
@missymanioca

Ma checkbox a changé de nom entre-temps j'ai eu quelques déboires...

ah ben ça, si le nom de la checkbox a changé, c'est plutôt recommandé de mettre le nouveau nom dans l'instruction VBA ! 😁 😜 éventuellement, essaye :​

VB:
Sub Macro2()
  If CheckBox44 Then Worksheets("Bilan ECA").[A2] = "ECA"
End Sub

si la case à cocher est un contrôle de formulaire placé directement sur la feuille de calcul, pense à lui affecter la macro nommée Macro2 ; si la case à cocher est un contrôle ActiveX, c'est différent ; et si la case à cocher est dans un UserForm (= un formulaire), c'est encore différent ! comme quoi, avec ton fichier (sans données confidentielles), ton exo aurait déjà été résolu. :)

pour info, tu peux envoyer ton fichier Excel en utilisant le bouton "Joindre un fichier" que tu peux voir en bas à gauche d'un post en cours d'édition ; attention : taille maximum : 1 Mo (que le fichier soit zippé ou non).​

soan
 
Dernière édition:

missymanioca

XLDnaute Nouveau
Bonjour,
merci beaucoup de ton aide Soan mais ça ne fonctionne pas non plus, même en affectant la macro.
En effet ce sera plus simple avec le fichier, je l'ai mis en pièce jointe.
Je parle d'un "formulaire", mais techniquement ce n'est pas vraiment un formulaire, je l'ai fait à la main 😅
 

Pièces jointes

  • Test v2.xlsm
    359.3 KB · Affichages: 16

patricktoulon

XLDnaute Barbatruc
Bonjour
il faut savoir qu'en VBA quand on parle de formulaire on parle de userform
là il n'y a rien de tout ça, juste un userform vide
c'est (je suppose) juste un transfert de données après remplissage dans la feuil1

bref c'est de niveau débutant pour faire cela
et je te suggère d'utiliser un tableau structuré pour tes feuilles secondaires ce sera largement plus simple
 

missymanioca

XLDnaute Nouveau
En effet j'ai oublié de le préciser mais je suis bien une débutante en VBA d'où ma demande d'aide ;)
Pour ce qui est du tableau structuré je ne comprend pas vraiment en quoi ça peut répondre à ma demande ?
Je veux garder l'aspect visuel de mon document tel qu'il est car je dois l'imprimer, j'aimerais juste rajouter un bouton qui puisse quand je clique copier et coller toutes les informations que j'ai renseigné sur mon document sur mon tableau en ajoutant une nouvelle ligne. Pour toutes les autres infos, je n'ai pas de soucis ça fonctionne, c'est pour les cases à cocher que je séche... et je ne vois pas trop comment je pourrais le présenter autrement (sans cases à cocher)
 

soan

XLDnaute Barbatruc
Inactif
Bonjour missymanioca, le fil,

je te laisse essayer ton nouveau "formulaire". :) (qui n'est pas un UserForm : c'est seulement sur la feuille de calcul)

pour tes 4 cases à cocher du "Type d'activité", regarde bien toutes les possibilités entre ces deux extrêmes : de 4 cases cochées à aucune case cochée ; tu l'savais pas, hein, que même dans Excel y'a Extrême Limite ! 😜

bien sûr, je ne parle pas seulement du cochage proprement dit, mais aussi du résultat obtenu en feuille "Bilan ECA", cellule A2.



code VBA du module "Feuille entretien" :

VB:
Option Explicit

Sub TA()
  Dim T, s$, n As Byte, i As Byte
  T = Array("PT", "ECA", "ESA", "ETS")
  Application.ScreenUpdating = 0
  For i = 1 To 4
    ActiveSheet.Shapes("cbTA" & i).Select
    If Selection.Value = 1 Then s = s & T(i - 1) & ", "
  Next i
  n = Len(s): If n > 0 Then s = Left$(s, n - 2)
  ['Bilan ECA'!A2] = s: ActiveCell.Select
End Sub

bien sûr, ensuite, tu devras faire une adaptation pour que la ligne de la cellule de destination corresponde à la ligne où tu vas écrire des infos en feuille "Bilan ECA", pour une personne donnée ou un dossier donné.

puis tu auras la joie de refaire tout le même travail pour chaque série de cases à cocher de ton magnifique formulaire ! 😁 bon courage, et haut les cœurs, car tu vas avoir beaucoup de pain sur la planche ! 😄

c'est pas pour te décourager, hein ? au contraire, j'te stimule ! 🤗 😇
(mais surtout, ne me demande pas de le faire à ta place ! 😂 🤣)

soan
 

Pièces jointes

  • Test v3.xlsm
    125.8 KB · Affichages: 23

Discussions similaires

Statistiques des forums

Discussions
312 108
Messages
2 085 363
Membres
102 874
dernier inscrit
Petro2611