Modifier la valeur d'une cellule dans un tableau variable

  • Initiateur de la discussion Initiateur de la discussion maud.33500
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

maud.33500

XLDnaute Nouveau
Bonjour le forum,

J'aurais besoin d'un couop de main sur une ligne de code qui m'embête un peu, faut bien l'avouer. Je souhaiterais remplacer le contenu de la cellule qui répond aux différents critères. Ma recherche trouve la cellule sans problème mais impossible de modifier la valeur.

Je ne peux pas vous joindre le fichier mais voici le morceau code concerné:

Code:
'Recherche la ligne de la BDD Défauts correspondante
       If CDate(CStr(tablo(i, 1))) = CDate(TextBox1) And CStr(tablo(i, 2)) = ComboBox1 And ComboBox4 = CStr(tablo(i, 3)) And ComboBox5 = CStr(tablo(i, 6)) And ComboBox6 = CStr(tablo(i, 7)) Then

 'Modifie la ligne de la BDD
        tablo(i, 4) = TextBox8.Value ' c'est ici que je ne sais pas trop comment taper ma ligne de code       
                              
        End If
    Next i

Merci d'avance pour votre aide
 
Re : Modifier la valeur d'une cellule dans un tableau variable

Bonjour,

Je souhaiterais remplacer le contenu de la cellule qui répond aux différents critères. Ma recherche trouve la cellule sans problème mais impossible de modifier la valeur.

vois pas de cellule dans le bout de code qui te pose problème...
Code:
tablo(i, 4) = TextBox8.Value ' c'est ici que je ne sais pas trop comment taper ma ligne de code
ma boule de cristal vois pltôt un tableau virtuel....

bon après midi
@+
 
Re : Modifier la valeur d'une cellule dans un tableau variable

Bonjour maud.33500, salut Pierrot,

Si l'on veut à chaque fois modifier la cellule, il faut savoir (et nous dire) à partir de quelle plage de cellules la variable tablo a été créée.

Sinon a priori le code va bien, il suffira à la fin d'écrire plage = tablo

A+
 
Re : Modifier la valeur d'une cellule dans un tableau variable

Bonjour Pierrot, Bonjour Job75,

A la lecture de vos réponses, je me dis que je me suis peut être mal exprimée... Donc je la refais:

Quand je modifie une ligne, je souhaite que la valeur qui se trouve dans la Textbox8 remplace la valeur qui se trouve dans tablo(i, 4) .

Voici le code entier, ce sera peut être plus clair (j'espère)
Code:
' Enregistrer la modification du défaut

Private Sub CommandButton38_Click()

'Déclare la variable i
    Dim i As Integer
   
 'Définit la variable Tablo (=> Emplacement des Données source pour l'incrémentation de la ListBox)
    With Sheets("DEFAUTS")
        Derlig = .Range("A65536").End(xlUp).Row
        tablo = .Range("A3:G" & Derlig)
    End With
         
 'Boucle toutes les lignes du tableau
    For i = 1 To UBound(tablo)

 'Recherche la ligne de la BDD Défauts correspondante
       If CDate(CStr(tablo(i, 1))) = CDate(TextBox1) And CStr(tablo(i, 2)) = ComboBox1 And ComboBox4 = CStr(tablo(i, 3)) And ComboBox5 = CStr(tablo(i, 6)) And ComboBox6 = CStr(tablo(i, 7)) Then

 'Modifie la ligne de la BDD
                        tablo(i, 4) = TextBox8.Value ' Nouvelle durée                       
        End If
    Next i
End Sub

Merci d'avance
 
Re : Modifier la valeur d'une cellule dans un tableau variable

Re,

1) Si TextBox8 doit être une durée au format hh:mm il est mieux de le tester au début par :

Code:
If Not Textbox8 Like "##:##" Then Textbox8 = "": Textbox8.SetFocus: Exit Sub
2) Ensuite dans la boucle le code ira bien :

Code:
tablo(i, 4) = TextBox8 ' Nouvelle durée
3) Et bien sûr en fin de macro, si l'on veut modifier la plage :

Code:
Sheets("DEFAUTS").Range("A3:G" & Derlig) = tablo
A+
 
Re : Modifier la valeur d'une cellule dans un tableau variable

Bonjour Job75,

Ma durée n'est pas au format hh:mm c'est juste un chiffre en minute qui est saisie (ex: 10 , 30,....).

Lorsque je place un espion sur la ligne suivante, la valeur retournée est Faux...
Code:
tablo(i, 4) = TextBox8 ' Nouvelle durée

Voici le fichier simplifié, ce sera peut être plus facile.... ^^

Merci d'avance
 

Pièces jointes

Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour