Inscrire une valeur dans une cellule VBA

Résolu
nathan027 Messages postés 101 Date d'inscription   Statut Membre Dernière intervention   -  
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour

J'aimerai savoir s'il est possible de donner une valeur à une cellule en fonction de ce qui serait écrit dans une autre sans avoir a écrire dans la cellule (en passant par VBA je suppose)
Ce que je voudrai c'est ça en gros
Quand dans ma cellule F15 il y la lettre "F" que ma cellule H15 = 100%
ceux de la ligne F11 à F1500

Merci d'avance

4 réponses

eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

ceux de la ligne F11 à F1500
Oui ? Et ?
Tu as oublié la fin de ta phrase...
Et j'ai bien l'impression qu'une simple formule suffise.
eric

0
nathan027 Messages postés 101 Date d'inscription   Statut Membre Dernière intervention   1
 
Oui désolé je n'avais pas vu.
En fait Quand dans la cellule F11 il y écrit "F" je veux que dans G11 il y ai écrit 100%
donc de F11 à F1500 et de G11 à G1500
Suis je clair ? (quand on écrit c'est parfois difficile de retranscrire ce qu'on pense)
0
nathan027 Messages postés 101 Date d'inscription   Statut Membre Dernière intervention   1
 
J'ai réussi à trouver je partage (pensez juste à mettre les cases en %)

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 And Target.Column = 6 Then

Select Case Target.Value
Case "n"
Cells(Target.Row, 7) = "1"

Case Else
Cells(Target.Row, 7) = ""

End Select
End If
End Sub
0
nathan027 Messages postés 101 Date d'inscription   Statut Membre Dernière intervention   1
 
Mon seul soucis c'est que j'ai deux code "worksheet" et que ca ce n'est pas possible mais je sais pas comment faire du coup !! :/
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

tu parles de "F", ensuite c'est "n"...
Tu parles de la colonne H qui devient G...
Essaie d'être cohérent.

Pas besoin de macro, en G11 :
=SI(F11="F";1;"")

à tirer vers le bas
eric
0
nathan027 Messages postés 101 Date d'inscription   Statut Membre Dernière intervention   1
 
c'est exactement pareil en fait j'ai juste changé quelques petites choses dans mon tableau donc les colonnes ne sont plus les même et pour la lettre "n" ou "F" .. si juste un changement de lettre perturbe les gens ...
Et non si j'avais voulu une fonction "SI" , je n'aurais pas précisé que je voulais du VBA ... ma cellule devait rester libre d'écrire autre chose.

Mais pour être cohérent avec le poste de départ

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 And Target.Column = 5 Then

Select Case Target.Value
Case "F"
Cells(Target.Row, 6) = "1"

Case Else
Cells(Target.Row, 6) = ""

End Select
End If
End Sub
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Pas bonjour non plus,
en disant : en passant par VBA je suppose , ne sous-entend pas vba obligatoire...
Ton code pourrait être beaucoup plus court mais bon.
=1
(numérique) et non = "1" (chaine)
Sinon le format % ne fera rien.
eric

0