OVH Cloud OVH Cloud

Calculs dans commentaires ???

5 réponses
Avatar
Néfertari
Bonjour,

Est-il possible de faire des calculs dans les commentaires de cellule ??
En fait, je voudrais que, lorsque qu'une cellule est selectionnée, sa
contre-valeur en dollars (par ex) s'affiche dans un commentaire (ou autre
moyen ... mais je ne veux pas créer de colonne supplémentaire) et ca
automatiquement bien sur (si ... éventuellement... , le montant de la
cellule change ... la contre valeur aussi !!) ... suis-je claire ??

Merci d'avance

Néfertari

5 réponses

Avatar
AV
Pour une conversion euros/dollars dans la colonne A
A mettre dans le module de la feuille :
(clic droit sur l'onglet > visualiser code > copier/coller)

Private Sub Worksheet_Change(ByVal zz As Range)
If zz.Column <> 1 Then Exit Sub
x = zz.Value
With zz
.ClearComments
.AddComment
.NoteText Format(x / 0.82747, "0.00""$""")
.Comment.Shape.TextFrame.AutoSize = True
End With
End Sub

Private Sub Worksheet_SelectionChange(ByVal zz As Range)
If zz.Column <> 1 Then Exit Sub
If zz.Value = "" Then
zz.ClearComments: Exit Sub
End If
x = zz.Value
With zz
.NoteText Format(x / 0.82747, "0.00""$""")
.Comment.Shape.TextFrame.AutoSize = True
End With
End Sub

AV
Avatar
papou
Bonjour
Sinon une petite variante avec affichage du résultat dans la barre d'état
d'Excel :
(code à placer dans la feuille)
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
If Target.Value <> "" And Target.Value <> 0 Then
If Not Application.DisplayStatusBar Then _
Application.DisplayStatusBar = True
ValeurUSD = Format(ActiveWindow.RangeSelection / 0.82747, "0.00""$""")
Application.StatusBar = "Valeur en USD = " & ValeurUSD
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
If Target.Value <> "" And Target.Value <> 0 Then
If Not Application.DisplayStatusBar Then _
Application.DisplayStatusBar = True
ValeurUSD = Format(ActiveWindow.RangeSelection / 0.82747, "0.00""$""")
Application.StatusBar = "Valeur en USD = " & ValeurUSD
Else: Application.StatusBar = False
End If
End Sub

Cordialement
Pascal

"Néfertari" a écrit dans le message de
news:
Bonjour,

Est-il possible de faire des calculs dans les commentaires de cellule ??
En fait, je voudrais que, lorsque qu'une cellule est selectionnée, sa
contre-valeur en dollars (par ex) s'affiche dans un commentaire (ou autre
moyen ... mais je ne veux pas créer de colonne supplémentaire) et ca
automatiquement bien sur (si ... éventuellement... , le montant de la
cellule change ... la contre valeur aussi !!) ... suis-je claire ??

Merci d'avance

Néfertari



Avatar
papou
Ajout d'un contrôle en cas de sélection de plusieurs cellules (sinon erreur)
:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Or Target.Cells.Count > 1 Then Exit Sub
If Target.Value <> "" And Target.Value <> 0 Then
If Not Application.DisplayStatusBar Then _
Application.DisplayStatusBar = True
ValeurUSD = Format(ActiveWindow.RangeSelection / 0.82747, "0.00""$""")
Application.StatusBar = "Valeur en USD = " & ValeurUSD
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column <> 1 Or Target.Cells.Count > 1 Then Exit Sub
If Target.Value <> "" And Target.Value <> 0 Then
If Not Application.DisplayStatusBar Then _
Application.DisplayStatusBar = True
ValeurUSD = Format(ActiveWindow.RangeSelection / 0.82747, "0.00""$""")
Application.StatusBar = "Valeur en USD = " & ValeurUSD
Else: Application.StatusBar = False
End If
End Sub

Cordialement
Pascal

"papou" a écrit dans le message de
news:%
Bonjour
Sinon une petite variante avec affichage du résultat dans la barre d'état
d'Excel :
(code à placer dans la feuille)
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
If Target.Value <> "" And Target.Value <> 0 Then
If Not Application.DisplayStatusBar Then _
Application.DisplayStatusBar = True
ValeurUSD = Format(ActiveWindow.RangeSelection / 0.82747, "0.00""$""")
Application.StatusBar = "Valeur en USD = " & ValeurUSD
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
If Target.Value <> "" And Target.Value <> 0 Then
If Not Application.DisplayStatusBar Then _
Application.DisplayStatusBar = True
ValeurUSD = Format(ActiveWindow.RangeSelection / 0.82747, "0.00""$""")
Application.StatusBar = "Valeur en USD = " & ValeurUSD
Else: Application.StatusBar = False
End If
End Sub

Cordialement
Pascal

"Néfertari" a écrit dans le message de
news:
Bonjour,

Est-il possible de faire des calculs dans les commentaires de cellule ??
En fait, je voudrais que, lorsque qu'une cellule est selectionnée, sa
contre-valeur en dollars (par ex) s'affiche dans un commentaire (ou
autre


moyen ... mais je ne veux pas créer de colonne supplémentaire) et ca
automatiquement bien sur (si ... éventuellement... , le montant de la
cellule change ... la contre valeur aussi !!) ... suis-je claire ??

Merci d'avance

Néfertari







Avatar
Néfertari
Bonjour,
Merci pour ta réponse mais j'ai quelques questions because je connais pas du
tout Visual basic...
Donc j'ai fait un copier/coller de ton ... programme (??? c koi le nom kon
donne à ce charabia :-)) ?) dans le module de la feuille ... j'ai même
réussi à changer la devise et le numéro de la colonne (j'ai remplacé<> 1 par
2 sur toutes les lignes concernées) (balézzzz kan même pour une ignarde de
VBA lol !!! )

A premiere vue cela fonctionne seulement, il y a un message d'erreur et la
ligne :
If zz.Value = "" Then
est surlignée en jaune ... ya ti kekchose à changer ou à rajouter ???

De plus, je voudrais que cela s'active sur plusieurs colonnes mais pas la
1ère et pas la dernière (en l'occurence la 4è)
Bon voila pour l'instant et merci d'avance de prendre du temps pour une
totally-nulle comme moi !!!

Néfertari

"AV" a écrit dans le message news:

Pour une conversion euros/dollars dans la colonne A
A mettre dans le module de la feuille :
(clic droit sur l'onglet > visualiser code > copier/coller)

Private Sub Worksheet_Change(ByVal zz As Range)
If zz.Column <> 1 Then Exit Sub
x = zz.Value
With zz
.ClearComments
.AddComment
.NoteText Format(x / 0.82747, "0.00""$""")
.Comment.Shape.TextFrame.AutoSize = True
End With
End Sub

Private Sub Worksheet_SelectionChange(ByVal zz As Range)
If zz.Column <> 1 Then Exit Sub
If zz.Value = "" Then
zz.ClearComments: Exit Sub
End If
x = zz.Value
With zz
.NoteText Format(x / 0.82747, "0.00""$""")
.Comment.Shape.TextFrame.AutoSize = True
End With
End Sub

AV




Avatar
AV
De plus, je voudrais que cela s'active sur plusieurs colonnes mais pas la
1ère et pas la dernière (en l'occurence la 4è)


Mais encore ?
Quelles colonnes doivent être concernées ?

AV