Cellule = Label.Caption ne fonctionne pas

Hicsygrek

XLDnaute Occasionnel
Bonjour à tous,

Voici mon code :

Code:
Private Sub CdeButOK_Click()


Dim M As Integer, P As Integer, col As Integer
Target = ComboBox1
Set ShtS = Sheets("Polyvalence")
M = ShtS.Range("C1:AO1").Find(What:=Target).Column 
'P = 0, 1 ou 2
R = ComboBox3
    If ComboBox2 = "Conducteur" Then
    P = 0
    col = M + P
    ShtS.Cells(R, col) = Former.Label2.Caption
       
    End If
   

End Sub

L'idée c'est que la cellule d'intersection Cells(R, col) que j'arrive à obtenir, soit égale au Caption du Label2 que j'obtiens également. Mais Excel me signal un incompatibilité de type sur cette ligne. :confused:

J'ai consulté divers sujets sur la même idée qui fonctionnent bien avec un code du meme genre.

Quelqu'un a t il une idée ?? :confused:

Merci d'avance
 

Hicsygrek

XLDnaute Occasionnel
Re : Cellule = Label.Caption ne fonctionne pas

Hello TempusFugit,

Il y a un Set ShtS = Sheets("Polyvalence")

J'ai remplacé mon code précédent par celui-ci, je n'ai plus de message d'erreur mais la cellule ne prend pas la valeur du label :confused:

Code:
Private Sub CdeButOK_Click()


Dim R As Variant, M As Integer, P As Integer, col As Integer
Target = ComboBox1
TargetR = ComboBox3
Set ShtS = Sheets("Polyvalence")
M = ShtS.Range("C1:AO1").Find(What:=Target).Column 'je recherche le numéros de la colonne correspondant à la machine
'P = 0, 1 ou 2
R = ShtS.Range("A:A").Find(What:=TargetR).EntireRow
col = M + P

    If ComboBox2 = "Conducteur" Then
    P = 0
    R(1, col) = Label2.Caption
    End If
   
End Sub

On progresse :D
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Cellule = Label.Caption ne fonctionne pas

Bonjour le fil, bonjour le forum,

Je rejoins l'avis de TempusFugit et de Tototiti...
Peut-être comme ça :
Code:
Private Sub CdeButOK_Click()
Dim ccb1 As Integer 'déclare la variable ccb1 (Colonne ComboBox1)
Dim P As Integer 'déclare la variable P (pourrait être déclarée comme Byte ?)
Dim col As Integer 'déclare la variable col (COLonne)
Dim cb1 As String 'déclare la variable cb1 (ComboBox1)
Dim cb3 As String 'déclare la variable cb3 (ComboBox3)
Dim ShtS As Worksheet 'déclare la variable ShtS
 
cb1 = ComboBox1.Value 'définit la variable cb1
Set ShtS = Sheets("Polyvalence") 'définit la variable ShtS
ccb1 = ShtS.Range("C1:AO1").Find(What:=cb1).Column 'définit la colonne Ccb1
'P = 0, 1 ou 2
cb3 = ComboBox3.Value 'définit la variable cb3
If ComboBox2.Value = "Conducteur" Then 'condition : si la valweur de la ComboBox2 est "Conducteur"
    P = 0 'définit la variable P
    col = ccb1 + P 'définit la colone col
    ShtS.Cells(CInt(cb3), col) = Former.Label2.Caption 'place dans la cellule la caption du Label2
End If 'fin de la condition
End Sub
 

Hicsygrek

XLDnaute Occasionnel
Re : Cellule = Label.Caption ne fonctionne pas

Hello tout l'monde,

@ tototiti : ça me donne une erreur 1004, erreur définie par l'application ou par l'objet

@ Robert : toujours le même message d'erreur (13) ; incompatibilité de type avec ta solution.
j'vais essayer de vous faire un fichier exemple...
 

Hicsygrek

XLDnaute Occasionnel
Re : Cellule = Label.Caption ne fonctionne pas

Voici un fichier exemple.

Dans la première Combobox(3), on choisi un nom.
Dans la deuxième (Combobox1), on choisi une machine, ici le test ne réagit qu'à Machine A
Dans la troisème (Combobox2), le poste, prendre Chef.

Cocher quelques Checkbox pour définir une valeur dans le Label, puis cliquer sur OK.

Dans la feuil1, la valeur du label doit apparaitre à l'intersection du poste appartenant à la machine et du nom choisi.
C'est cette dernière ligne du code qui pose problème... :confused:

(j'avais testé avec une textbox et une listbox mais ça ne change rien au problème)

En espérant que ça vous éclairera davantage sur le problème
 

Pièces jointes

  • ExLabCell.xlsm
    33.9 KB · Affichages: 65
  • ExLabCell.xlsm
    33.9 KB · Affichages: 62
  • ExLabCell.xlsm
    33.9 KB · Affichages: 71

pierrejean

XLDnaute Barbatruc
Re : Cellule = Label.Caption ne fonctionne pas

Bonjour Hicsygrek

Salut à tous

Vois cette modif:

Code:
cb3 = ComboBox3.Value 'définit la variable cb3
For n = 3 To ShtS.Range("A65536").End(xlUp).Row
 If ShtS.Range("A" & n) = cb3 Then cb3n = n
Next n
If ComboBox2.Value = "Chef" Then 'condition : si la valweur de la ComboBox2 est "Chef"
    P = 0 'définit la variable P
    col = ccb1 + P 'définit la colone col
    ShtS.Cells(CInt(cb3n), col) = UserForm2.Label2.Caption 'place dans la cellule la caption du Label2
End If 'fin de la condition
 

Pièces jointes

  • ExLabCell.xlsm
    31.9 KB · Affichages: 61
  • ExLabCell.xlsm
    31.9 KB · Affichages: 59
  • ExLabCell.xlsm
    31.9 KB · Affichages: 57

Statistiques des forums

Discussions
312 610
Messages
2 090 204
Membres
104 451
dernier inscrit
scp9990