Se connecter avec
S'enregistrer | Connectez-vous

Problème récupération valeur et affichage Checkbox

Dernière réponse : dans Programmation

Bonjour à tous !!!!! :hello: 

Je sollicite votre aide précieuse pour un problème que je n'arrive pas à résoudre depuis plusieurs jour :cry:  .Je réalise un macro qui lit un fichier texte ligne par ligne et récupère les données.

Je veu afficher selon qu'une ligne soit "VRAI" ou FAUX" le cochage ou non d'une check box. Pour cela je réecris le "VRAI" ou FAUX" dans la cellule correspondant au controle source de ma checkbox.

Deux problèmes : :??: 
1) Pour remplir la cellule je doit exécuter deux fois la macro, la première effacant seulement le contenu de la case.

2) La checkbox n'affiche pa forcémént le réultat quand la cellules correspondante est remplie.

J'espere que vous m'avez compris et merci d'avance. :bounce: 
Lassé par la pub ? Créez un compte

Salut merci de t'intérésser à mon cas:

Sub recupconfig()

Dim nomfichier As Variant
Dim titre As String
Dim mavariable As String
Dim recup As Variant

titre = "Sélectionnez le fichier à importer"
nomfichier = Application.GetOpenFilename("(*.txt),*.txt", 1, titre, , False)
Sheets("Configuration").Select


Open nomfichier For Input As #1
...
Line Input #1, mavariable
recup = Split(mavariable, ":")
Cells(67, 6) = UCase(recup(1))
.....
Close #1
End Sub

Voila la macro. Avant d'être remplie la cellule contient déja une valeur. J'ai déja essayer en ajoutant un cells(67,6)=empty.

Mystere pour moi:
Si je fais
Cells(67, 6) = UCase(recup(1))
msgbox(cells(67,6))
Cells(67, 6) = UCase(recup(1))

La valeur est bien affichée dans ma cellule après l'éxécution de ma macro.

Pour le 2) Quand j'exécute la macro qui affiche mon userfoerm contenant ma checkbox, la case reste gréisée.

Desolé alors voila mon message :

[vb]Sub recupconfig()

Dim nomfichier As Variant
Dim titre As String
Dim mavariable As String
Dim recup As Variant

titre = "Sélectionnez le fichier à importer"
nomfichier = Application.GetOpenFilename("(*.txt),*.txt", 1, titre, , False)
Sheets("Configuration").Select


Open nomfichier For Input As #1
...
Line Input #1, mavariable
recup = Split(mavariable, ":")
Cells(67, 6) = UCase(recup(1))
.....
Close #1
End Sub
[/vb]

Voila la macro. Avant d'être remplie la cellule contient déja une valeur. J'ai déja essayer en ajoutant un cells(67,6)=empty.

Mystere pour moi:
Si je fais
Cells(67, 6) = UCase(recup(1))
msgbox(cells(67,6))
Cells(67, 6) = UCase(recup(1))

La valeur est bien affichée dans ma cellule après l'éxécution de ma macro.

Pour le 2) Quand j'exécute la macro qui affiche mon userfoerm contenant ma checkbox, la case reste gréisée.
Expert Programmation

y sla pête le modo :sol:  , mais franchement, il pensait être clair et explicite :pfff:  . Et malgré ça, le flop321 n'a toujours pas compris. Pas [VB], nom d'un bit, [ CODE] !

Je n'aime pas trop les
  1. Cells(..) = truc

Je préfère préciser ce que je veux :
  1. Cells(..).Value = truc
  2. ' // ou
  3. Cells(..).Formula = truc

:D  Desolé alors voila mon message, jespere que ca va à peu près :jap: 

  1. Sub recupconfig()
  2.  
  3. Dim nomfichier As Variant
  4. Dim titre As String
  5. Dim mavariable As String
  6. Dim recup As Variant
  7.  
  8. titre = "Sélectionnez le fichier à importer"
  9. nomfichier = Application.GetOpenFilename("(*.txt),*.txt", 1, titre, , False)
  10. Sheets("Configuration").Select
  11.  
  12.  
  13. Open nomfichier For Input As #1
  14. ...
  15. Line Input #1, mavariable
  16. recup = Split(mavariable, ":")
  17. Cells(67, 6).value = UCase(recup(1))
  18. .....
  19. Close #1
  20. End Sub


Voila la macro. Avant d'être remplie la cellule contient déja une valeur. J'ai déja essayer en ajoutant un cells(67,6)=empty.

Mystere pour moi:
Si je fais
  1. Cells(67, 6).value = UCase(recup(1))
  2. msgbox(cells(67,6).value)
  3. Cells(67, 6).value = UCase(recup(1))

La valeur est bien affichée dans ma cellule après l'éxécution de ma macro.

Pour le 2) Quand j'exécute la macro qui affiche mon userfoerm contenant ma checkbox, la case reste gréisée.
Lassé par la pub ? Créez un compte