Impossible soustraire valeur textbox d'une cellule

Résolu/Fermé
solene85
Messages postés
390
Date d'inscription
jeudi 24 janvier 2008
Statut
Membre
Dernière intervention
9 janvier 2016
- Modifié par pijaku le 31/10/2014 à 12:50
solene85
Messages postés
390
Date d'inscription
jeudi 24 janvier 2008
Statut
Membre
Dernière intervention
9 janvier 2016
- 31 oct. 2014 à 12:41
Bonsoir les gens,

Dim C As Range
    With Worksheets(2).Columns(1)
        Set C = .Find(Me.ComboBox2.Value, LookIn:=xlValues)
        If Not C Is Nothing Then
            L = (C.Row)
            m = Range("D" & L).Value
            r = (TextBox10.Value)
            m = m - r
        End If
        
    End With



Pourriez vous m'expliquer pourquoi la soustraction ne fonctionne pas.
j'ai bien mon numéro de ligne en L
j'ai bien la valeur de la cellule correspondant au numéro de la ligne en m
j'ai bien la valeur de la textbox dans r
merci


3 réponses

solene85
Messages postés
390
Date d'inscription
jeudi 24 janvier 2008
Statut
Membre
Dernière intervention
9 janvier 2016
13
Modifié par pijaku le 31/10/2014 à 12:50
ai trouvé cette solution. Elle fonctionne mais demande certainement à être améliorée ou compléter


   Dim C As Range
    With Worksheets(2).Columns(1)
        Set C = .Find(Me.ComboBox2.Value, LookIn:=xlValues)
        If Not C Is Nothing Then
            r = CDbl(TextBox10.Value)
            L = (C.Row)
            m = .Range("D" & L).Value
            p = m - r
            .Range("D" & L).Value = p
        End If
        
    End With
0
Mytå
Messages postés
2967
Date d'inscription
mardi 20 janvier 2009
Statut
Contributeur
Dernière intervention
20 décembre 2016
916
31 oct. 2014 à 00:52
Salut le Forum

TextBox10 retourne une valeur texte.

Tu devrais cocher dans les options VBA
-Déclaration des variables obligatoire.

Petite lecture : Intérêt de déclarer des variables

Mytå
0
Mytå
Messages postés
2967
Date d'inscription
mardi 20 janvier 2009
Statut
Contributeur
Dernière intervention
20 décembre 2016
916
31 oct. 2014 à 00:59
Re le Forum

Pour récupérer la valeur de la colonne D après la recherche utilise : C.OFFSET(0,1)

Mytå
0
solene85
Messages postés
390
Date d'inscription
jeudi 24 janvier 2008
Statut
Membre
Dernière intervention
9 janvier 2016
13
31 oct. 2014 à 12:41
bonjour Myta
En reconsultant les différents posts j'avais vu le problème de la textbox
et j'ai converti la valeur avec "cdbl"
ai adapté C.OFFSET(0,1) à mon programme
et ai déclaré les variables suivant tes recommandations et après la lecture du lien.

je commence à comprendre un peu mieux vba et excel

il serait temps tu me diras ....

merci beaucoup pour ton aide et bonne journée
0