XL 2019 Deplacer un cercle au dessus d'une cellule cible

carlos

XLDnaute Impliqué
Supporter XLD
Bonjour,
je vous sollicite une fois de plus.
J'aimerais deplacer un objet cercle rouge au dessus d'une cellule cible (selon sa valeur)
Cordialement.
 

Pièces jointes

  • Deplacer objet au dessus d'une cellule cible.xlsm
    18.1 KB · Affichages: 9
Solution
Bonjour à tous :),

Deux versions :
  • v1 => on clique sur le bouton
  • v2 => pas de bouton, dès que la valeur de K2 change, on exécute la procédure
Si le nombre en K2 n'est pas trouvé dans la table alors on entoure la cellule K2.

Les codes (pour v1 et aussi pour v2) sont dans le module de code associé à la feuille de calcul "Feuil1".

code pour v1 :
VB:
Private Sub CommandButton1_Click()
Dim xcell As Range, X, Y, Haut, larg
   On Error Resume Next
   Set xcell = Range("b2:g7").Find(Range("k2"), LookIn:=xlValues, Lookat:=xlWhole)
   On Error GoTo 0
   If xcell Is Nothing Then Set xcell = Range("k2")
   With Me.Shapes("Donut 2")
      .Left = xcell.Left + (xcell.Width - .Width) / 2
      .Top = xcell.Top + (xcell.Height -...

Nico_J

XLDnaute Occasionnel
Supporter XLD
Bonjour,
pas tout à fait ce qui est demandé,
mais peut-être une piste ou une solution à la demande

VB:
Private Sub CommandButton1_Click()

Dim plage As Range

Set plage = Worksheets("feuil1").Range("B2:G7")
numero = Range("K2").Value
 
Worksheets("feuil1").Range("B2:G7").Interior.ColorIndex = 2

    For Each Cell In plage
    If Cell.Value = numero Then
    Cell.Interior.ColorIndex = 3
    End If
    
Next Cell

End Sub
 

Pièces jointes

  • Deplacer objet au dessus d'une cellule cible.xlsm
    19.4 KB · Affichages: 3

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour à tous :),

Deux versions :
  • v1 => on clique sur le bouton
  • v2 => pas de bouton, dès que la valeur de K2 change, on exécute la procédure
Si le nombre en K2 n'est pas trouvé dans la table alors on entoure la cellule K2.

Les codes (pour v1 et aussi pour v2) sont dans le module de code associé à la feuille de calcul "Feuil1".

code pour v1 :
VB:
Private Sub CommandButton1_Click()
Dim xcell As Range, X, Y, Haut, larg
   On Error Resume Next
   Set xcell = Range("b2:g7").Find(Range("k2"), LookIn:=xlValues, Lookat:=xlWhole)
   On Error GoTo 0
   If xcell Is Nothing Then Set xcell = Range("k2")
   With Me.Shapes("Donut 2")
      .Left = xcell.Left + (xcell.Width - .Width) / 2
      .Top = xcell.Top + (xcell.Height - .Height) / 2
   End With
End Sub

nota : votre forme s'appelle Donut 2 (nom anglais) correspondant à votre nom français "Cercle : creux 2". Franchement, il y a des traductions qu'on aurait mieux fait d'omettre ! Je me vois bien demander dans une boulangerie "auriez-vous un petit cercle creux au chocolat" 🤪!
 

Pièces jointes

  • carlos -Deplacer objet- v1.xlsm
    21.6 KB · Affichages: 6
  • carlos -Deplacer objet- v2.xlsm
    17.4 KB · Affichages: 11
Dernière édition:

patricktoulon

XLDnaute Barbatruc
bonjour
et moi a nauroto demander des ronds creux en caoutchouc rempli d'air pour ma voiture

c'est vrai que il faut faire attention avec la traduction en vba
perso je ne m'ennuie pas avec ça
quand on renomme la shape on peut utiliser le nom qu'on lui a donné ;)
jamais je laisse les noms d'origine
 

Discussions similaires

Réponses
30
Affichages
1 K

Statistiques des forums

Discussions
312 211
Messages
2 086 294
Membres
103 171
dernier inscrit
clemm