Bonjour
J'ai renommé des colonnes avec des noms (ex:Robert, Simon...).
Avec ces noms j'ai aussi rempli des cellules.
Puis avec ces cellules j'ai créé une combobox
Enfin je crée
Code:
pren = combobox.value
Dans ma macro à un moment j'ai besoin de remplir une cellule.
J'utilise
Code:
Cells(comp, pren) = 15
où comp est un Integer mais cela ne fonctionne pas.
J'ai aussi essayé
Les combobox renvoient les données sous forme de String (texte), donc tu es obligé de les transformer en valeur pour faire des calculs. Par exemple avec la fonction Val : X = Val(ComboBox1.Value).
Dans ton cas, Définis "pren" en tête du module de code, avant Private Sub Annonce_Click() comme ceci : Dim pren as Integer. La variable "pren" sera alors accessible dans les autres procédures.
Ensuite modifie la procédure : Private Sub ComboBox1_Change(), comme ceci :
Code:
Private Sub ComboBox1_Change()
With Enchere
pren = ComboBox1.ListIndex + 2
End With
End Sub
Le joueur de la cellule B1 a pour index 0 dans le combobox, celui de C1, 1, celui de D1, 2 .../...
Si tu rajoutes 2 à l'index tu obtiens le numéro de la colonne du joueur, donc "pren" a la valeur 2.
Cells(comp, pren) = tota_pren ne provoquera plus d'erreur.
Dans ton code tu n'as défini aucune variable, ce n'est pas trés facile de s'y retrouver !!!
C'est mon premier code sous excel et même sous tout langage.
Donc je ne sais pas trop faire au début.
Donc je vais définir mes variables afin que ce soit plus claire.
Sinon ComboBox1.ListIndex fonctionne mieux dans mon cas merci.