Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.
  • Initiateur de la discussion Initiateur de la discussion Guismo33
  • 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 !

Guismo33

XLDnaute Occasionnel
Bonjour à tous,

Je voudrais récupérer la valeur d'une cellule pour l'intégrer dans la formule n=active.sheets.cells(y,18)
Cells(2,n)=Cells(2,n)+1
Pourriez vous m'aider svp



Bien à vous
 
Bonjour le fil

Selon comment on interprète la chose, la syntaxe varie
VB:
Sub testA()
Dim y&
y = 1
Cells(y, 18) = 1
MsgBox Cells(y, 18).Address
MsgBox Cells(2, Cells(y, 18)).Address
[A2] = 5
Cells(2, Cells(y, 18)) = Cells(2, Cells(y, 18)) + 1
MsgBox [A2]
End Sub
Sub testB()
[Y18] = 1
MsgBox [Y18].Address
MsgBox Cells(2, [Y18]).Address
[A2] = 5
Cells(2, [Y18]) = Cells(2, [Y18]) + 1
MsgBox [A2]
End Sub
 
Bonjour,

voici la formule complete :

Dim x As String, y As String, n As String

x = 4
y = 6
Do While y < 21
With Sheets("T")
n = Cells(y, 18).Value
Cells(x, n) = Cells(x, n) + 1
End With
x = x + 1
y = y + 3
Loop

donne le resultat sur 2 lignes aprés la macro s'arrêt et m'affiche ceci :



merci à vous
 
Re,

Qu'est-ce que vous voulez faire exactement 🤔
VB:
n = Cells(y, 18).Value
Récupère une valeur vide à la ligne 12, donc erreur forcément

De plus il serait bien de spécifier l'objet conteneur sur le quel vous travaillez, votre codage n'est absolument pas correcte 😱
Commencez par apprendre les bases avant de vous lancer dans ce genre de chose 🙄

@+
 
re,

ah ok je viens de voir, aurez t'il une formule complementaire pour lui dire que quand c vide passe la boucle?
 
Bonjour
il est vrai que le procédé relate une conception bancale
cependant si je m'en tiens a ton code j'ajoute simplement le test de valeur de N
VB:
Dim x As String, y As String, n As String

x = 4
y = 6
Do While y < 21
With Sheets("T")
n = Cells(y, 18).Value
if val(n)>0 then Cells(x, n) = Cells(x, n) + 1
End With
x = x + 1
y = y + 3
Loop
 
Je vous remercie pour votre aide, je ne suis pas fort en VBA mais j'essaie, en vous remerciant tous.

bonne journée.
merci, c se que je cherchais
 
- 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
5
Affichages
704
Réponses
2
Affichages
427
Réponses
20
Affichages
313
Réponses
8
Affichages
647
  • Question Question
Microsoft 365 Graphique à bulles
Réponses
6
Affichages
244
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…