Affecter une valeur à une cellule en vb

Résolu/Fermé
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 - 21 déc. 2022 à 12:55
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 - 28 déc. 2022 à 21:50

Bonjour tout le monde,

je cherche à savoir comment on peut affecter une valeur à une cellule à l'aide de VB.

En gros, quand je suis dans une cellule d'une feuille qui s'appelle "Produits", je voudrais que la macro affecte la valeur 1 à la même cellule de la feuille qui s'appelle "Ventes".

Je suppose qu'on doit avoir quelque chose comme :

Worksheets("Ventes").Référence_de_la_cellule.Value = 1

Et c'est la syntaxe de la référence de cellule qui m'échappe totalement. Je pensais que ça serait simple - et ça l'est peut-être - mais je bloque.

Merci à celles et ceux qui prendront le temps de me répondre !


Windows / Firefox 108.0


8 réponses

via55 Messages postés 14385 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 28 février 2024 2 694
21 déc. 2022 à 13:22

Bonjour

Sheets("Ventes").Range("B3").Value=1

Cdlmnt

Via


0
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 550
27 déc. 2022 à 12:11

Merci via55, mais dans ce cas ça sera toujours la cellule B3, or je veux que ça soit la même cellule que celle de la feuille "appelante".

B3 si je suis en B3, mais C5 si je suis en C5... Et c'est là que je bloque


0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 304
Modifié le 27 déc. 2022 à 14:20

Bonjour

Sub bbb()
Dim ref As String
  ref = Sheets("Produits").ActiveCell.Address
  Sheets("Ventes").Cells(ref) = 1
End Sub

actuellement déclenchement  par boutop,

nous dire si autre méthode de déclenchement

bonjour Vja, bonne année


0
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 550
27 déc. 2022 à 14:32

Bonjour Michel et merci,

mais Cells a l'air de demander des arguments de type RowIndex, ColumnIndex, et le ActiveCell.Address renvoie par exemple $F$22.

Mais tu m'as mise sur la bonne voie quand même :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Nligne, NColonne As Integer
  NLigne = ActiveCell.Row
  NColonne = ActiveCell.Column
  Sheets("Ventes").Cells(NLigne, NColonne) = 1
  Cancel = True
End Sub

Et ça fonctionne. Merci, donc !

LatelyGeek


0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 304
27 déc. 2022 à 16:22

Ça marche mais pourquoi faire simple quand on peut faire complqué !...


0
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 550
Modifié le 28 déc. 2022 à 16:49

J'ai testé ta solution, mais elle provoquait une erreur...

Si je laissais le nom de la feuille, le message était "Propriété ou méthode non gérée par cet objet" et Ref était égal à ""

et si je laissais juste Ref = ActiveCell.Adress c'était "Argument ou appel de procédure incorrect" puisque la valeur de Ref était de type "$B$9"

J'ai mal fait quelque chose ?

0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 304
28 déc. 2022 à 19:49

j'avais testé avant de poster (XL 2007)  et c'était OK....

bon, si ca marche chez toi, garde ta soluce ;-)

au passage: bonne année !


0
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 550
28 déc. 2022 à 19:52

J'ai 365... Bon, enfin en tout cas c'est grâce à tes lumières que j'ai trouvé une solution, donc encore merci et bonne année à toi aussi !!!

0
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 550
28 déc. 2022 à 21:13

Et j'ai une dernière question bête : Où est passé le bouton "Marqué comme résolu" ?


0
eriiic Messages postés 24561 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 février 2024 7 209
28 déc. 2022 à 21:43

Bonjour à tous,

michel, j'ai aussi un soucis avec ta syntaxe sur 2021.

Pour faire plus court :
 

Sheets("Ventes").Range(ActiveCell.Address) = 1

Bonnes fêtes de fin d'année à tous
eric


0
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 550
28 déc. 2022 à 21:50

Voilà, je savais qu'il existait une solution simple, élégante et épurée. Merci et bonnes fêtes de fin d'année !

0