Question débutant

Bonjour,

Je suis nul en VBA et je cherche une solution pour faire cela:

je sélectionne une cellule quelconque avec la souris dans la colonne "B" (par exemple ligne 3, colonne B). J'y introduit un nombre (par ex.12) et j'aimerai retrouver le double de ce nombre (24) dans la cellule d'à coté (ligne 3,colonne C).
et ceci uniquement ne doit fonctionner que pour la colonne B.
J'ai essayé en utilisant l'évènement " Private Sub Worksheet_SelectionChange(ByVal Target As Range)" mais je ne sais pas comment limiter cela à la colonne B ni quelle ligne a provoqué l'évènement.

ABC
1224
13
4488

Merci pour votre coup de main

Bonjour,

Pour cela, il faut utiliser l'évènement change qui se déclenche quand la cellule est modifiée :

'exemple 1
private sub worksheet_change(byval target as range)

if not intersect(target, range("B1:B100")) is nothing then '<<<limité à B1:B100 (intersection de la plage et de la cible non vide revient à dire que la plage contient la cible)
    if target.value <> "" and target.count = 1 then 'si target non vide et pas un groupe de cellules
        target.offset(0,1).value = target.value * 2 'la cellule à droite (décalée de 0 ligne et 1 colonne) de target prend valeur target x 2
    end if
end if

end sub

'exemple 2
private sub worksheet_change(byval target as range)

if target.column = 2 then 'limité à 2è colonne
    if target.value <> "" and target.count = 1 then 'si target non vide et pas un groupe de cellules
        target.offset(0,1).value = target.value * 2 'la cellule à droite (décalée de 0 ligne et 1 colonne) de target prend valeur target x 2
    end if
end if

end sub

Je ne sais pas quel est le but mais la formule reste à privilégier selon moi :

=B3 * 2 'à saisir en C3

Cdlt,

bonjour

oui tout a fait la formule est tout indiqué

en mettant une condition pour ne pas avoir les zeros bien sur

si(B3>0;B3*2;"")

a étendre sur tout la place "C" concernée

Bonjour,

Un grand merci pour ce cours d'Excel avec les commentaires détaillés. C'est exactement ce que je cherchais. Je vais tester cela de suite.

La formule est effectivement la meilleure solution mais dans mon cas cela ne va pas car la colonne C sert comme données pour un graphique et que je ne peux pas avoir de formules dans les cellules vides de cette colonne car sinon le graphique l'interprète comme une valeur "0"

Test fait, cela fonctionne très bien.

Autre question de débutant concernant les graphiques.
Dans un graphique "courbe" comment mettre un axe secondaire (ou primaire) fixe avec le zéro au centre du graphique ? valeurs -10 0 +10 avec le zéro au centre du graphique même si actuellemnt les données vont seulement de -2 à + 8.

Merci à vous

Rechercher des sujets similaires à "question debutant"