Récuperer valeur cellule pour variable

FOUQUET Yves

XLDnaute Occasionnel
Bonsoir,

Avez vous 5 mn pour m'aider...
Je débute à peine dans VisualBasic.
Mon problème: Récupérer la valeur d'une cellule d'excel pour positionner l'écriture de nouvelle ligne dans mon tableur.

Dim Nbr As Variant 'Ma variable
With Sheets("Feuil2") 'Ma feuille Excel

'feuil2 est ma feuille de calcul Excel
'dans la cellule C6 il y a un nombre entier 23
'Je voudrais le récupérer pour le mettre dans la variable Nbr
'Cette variable servant à me positionner sur une ligne précise de mon tableur
'pour integrer des données de saisie
'-----------------------------------------------------------------------------------------------------------------------
.Range(Nbr).Value = ("C" & 6) 'C'est là que ça ne marche pas!!

' Là j'intégre à partir de Nbr

L = .Range("a" & Nbr + 7).End(xlUp).Row + 1 'Permet de se positionner sur la ligne de tableau définie par Nbr

.Range("A" & L).Value = CDate(TextBox1) 'Insère la donnée de la textbox1 dans la colonne A comme une date
.Range("B" & L).Value = ComboBox1 'Insère la donnée de la liste déroulante dans la colonne B
.Range("D" & L).Value = ComboBox2
.Range("E" & L) = ValeurTBx(TextBox5) 'Insére la donnée formatée monétaire dans la colonne E
.Range("H" & L).Value = ComboBox3
.Range("I" & L).Value = TextBox2
.Range("J" & L).Value = TextBox3
.Range("K" & L).Value = TextBox4
.Range("F" & L).Value = "," ' Colonne de pointage avec relevé banque, passe à "," par défaut
'----------------------------------------------------------------------------------------------------------------------
Voilà si quelqu'un peut m'aider car je galère...
Merci d'avance.
Yves
 

harry226h

XLDnaute Junior
Bonjour Yves, le forum
En jetant un coup d'oeil je ne vois pas de valeur attribuée a Nbr.
Peut etre c'est ce que tu as essayé de faire avec ca .Range(Nbr).Value = ("C" & 6).

Essaie plutot
VB:
Nbr = Range("C6").value

Cordialement

A
 

FOUQUET Yves

XLDnaute Occasionnel
Merci de votre réponse. Oui c'est ce que j'ai essayé...
Désolé mais votre solution ne marche pas non plus. Je l'avais essayé.

'**********************************
If MsgBox("Etes-vous certain de vouloir INSERER cette nouvelle ligne comptable ?", vbYesNo, "Demande de confirmation") = vbYes Then
'condition : si oui au message

Dim L As Long

Dim Nbr As Integer
With Sheets("Feuil2")

'feuil2 est ma feuille de calcul Excel
'dans la cellule C6 il y a un nombre entier 23
'Je voudrais le récuperer pour le mettre dans la variable Nbr
'Cette variable servant à me positionner sur une ligne précise de mon tableur
'pour integrer des données de saisie

Nbr = Range("C6").Value 'Ca ne marche pas!! Incompatilité de type à la ligne suivante ou j'utilise Nbr...
' j'utilise une variable integer et mon format de cellule Excel est "standard" à valeur 23


' Là j’intègre à partir de Nbr

L = .Range("a" & Nbr).End(xlUp).Row + 1 'Permet de se positionner sur la ligne de tableau définie par Nbr

.Range("A" & L).Value = CDate(TextBox1) 'Insère la donnée de la textbox1 dans la colonne A comme une date
.Range("B" & L).Value = ComboBox1 'Insère la donnée de la liste déroulante dans la colonne B
.Range("D" & L).Value = ComboBox2
.Range("E" & L) = ValeurTBx(TextBox5) 'Insére la donnée formatée monétaire dans la colonne E
.Range("H" & L).Value = ComboBox3
.Range("I" & L).Value = TextBox2
.Range("J" & L).Value = TextBox3
.Range("K" & L).Value = TextBox4
.Range("F" & L).Value = "," ' Colonne de pointage avec relevé banque, passe à "," par défaut

If Controls("ComboBox1") = "CAISSE" Then .Range("F" & L).Value = "x"
If Controls("ComboBox2") = "" Then .Range("F" & L).Value = " "
'End If

End With
'**********************************

J'ai cherché sur le forum mais pas vu de solution adaptée à mon problème. certainement trop simple sauf pour moi... Lol.
Cordialement.
 

Staple1600

XLDnaute Barbatruc
Bonsoir le fil,

FOUQUET Yves
La coutume avant de poster une nouvelle question c'est de se manifester dans la précédente ;)
 

FOUQUET Yves

XLDnaute Occasionnel
Désolé mais je ne connais pas encore les us et coutumes du forum. Je ne voulais pas mélanger les sujets. Mais je vais y arriver, à 66 ans faut du temps pour s'adapter. Surtout quand ce n'a pas été son métier... Merci quand même.
 

Staple1600

XLDnaute Barbatruc
Re

Comme dans ton autre fil, ce qui compte c'est le point ;)
With Sheets("Feuil2")
'feuil2 est ma feuille de calcul Excel
'dans la cellule C6 il y a un nombre entier 23
'Je voudrais le récuperer pour le mettre dans la variable Nbr
'Cette variable servant à me positionner sur une ligne précise de mon tableur
'pour integrer des données de saisie

Nbr = .Range("C6").Value 'ici mettre un point à cause du With/End With
 

FOUQUET Yves

XLDnaute Occasionnel
OK je vois que cela passe à présent. Tout ça à cause d'un point!!

Un grand MERCI tout de même.
Une petite question subsidiaire...
Si je veux ajouter le nombre 7 à Nbr (7=ligne d'entéte) avant traitement de la suite la formule est:

Nbr = .Range(Nbr + 7).Value

Je range dans Nbr, Nbr + 7
???
 

FOUQUET Yves

XLDnaute Occasionnel
J'ai testé comme vous dites mais...

Dim Nbr As Integer
With Sheets("Feuil2")
'feuil2 est ma feuille de calcul Excel
'dans la cellule C6 il y a un nombre entier
'Je voudrais le récuperer pour le mettre dans la variable Nbr
'Cette variable servant à me positionner sur une ligne précise de mon tableur
'pour integrer des données de saisie

Nbr = .Range("C6").Value 'ici mettre un point à cause du With/End With
Nbr = .Range("C6") + 7

Là ça ne me prend que 7 et plus la valeur de Nbr
 

FOUQUET Yves

XLDnaute Occasionnel
Pour la date je verrai plus tard. Mais ce n'est pas simple pour moi.
Pour l'instant j'essaye de comprendre à travers cet exemple de petit programme...
Pour revenir ma ligne de saisie maintenant il fait qu'écrire sur la premier ligne du tableau après 7. Comme s'il ne prenait plus en compte Nbr...
Je craque... lol
 

FOUQUET Yves

XLDnaute Occasionnel
Bon ma saisie fonctionne à présent...
Je vais me lancer dans la procédure visant à remplir la colonne "compte" à partir du libellé de la Combobox de la nature...
Je vais encore me prendre la tête...
Puis il me faudra régler la date,
Puis quand il y a aucun montant de saisie alors j'ouvre une fenêtre d'alerte mais qui plante en sortie..

Merci de ton aide.
 

Staple1600

XLDnaute Barbatruc
Re

Juste pour infos
Et pour revenir aux us et coutumes du forum
Est-ce que tu as pris le temps de lire la charte du forum?
Si oui, est-ce que tu penses que ton fichier est "raccord" avec le point 1) de la charte?
;)

Sinon cette syntaxe n'est pas valide
Nbr = ActiveWorkbook.ActiveSheet.Cells(6, 3).Values
 

Discussions similaires

Réponses
4
Affichages
165
Réponses
7
Affichages
163

Statistiques des forums

Discussions
311 725
Messages
2 081 949
Membres
101 851
dernier inscrit
vaiata