Récuperer valeur cellule pour variable

  • Initiateur de la discussion Initiateur de la discussion FOUQUET Yves
  • 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 !

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
 
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
 
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.
 
Bonsoir le fil,

FOUQUET Yves
La coutume avant de poster une nouvelle question c'est de se manifester dans la précédente 😉
 
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
 
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
???
 
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
 
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
 
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.
 
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
 
- 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

Réponses
4
Affichages
467
Réponses
2
Affichages
157
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
503
Réponses
3
Affichages
197
Retour