2016-12-15 5 views
0

J'essaie de faire en sorte qu'un utilisateur survole un triangle comme indiqué ci-dessous, une zone de texte apparaît avec certaines informations relatives à ce triangle. enter image description hereComment: survoler montre forme TextBox

Triangles sont dessinés avec la fonction suivante ...

Public Sub drawTriangle(theRow As Integer, theColumn As Integer, Optional myColor As System.Drawing.Color = Nothing) 
     myColor = System.Drawing.Color.Black 
     Dim theShape As Microsoft.Office.Interop.Excel.Shape = xlWorkSheet.Shapes.AddShape(MsoAutoShapeType.msoShapeIsoscelesTriangle, (xlWorkSheet.Cells(theRow, theColumn)).Left + 18, (xlWorkSheet.Cells(theRow, theColumn)).Top, 15, 14) 
     theShape.Fill.ForeColor.RGB = ToBgr(myColor) 
     theShape.Line.ForeColor.RGB = ToBgr(myColor) 

    End Sub 

Je n'ai pas été en mesure de trouver des exemples ou une bonne documentation sur la façon dont je pourrais-je le faire, alors pensé que je demanderais ici . Toute aide est très appréciée !!

+0

Cette information est-elle en lecture seule? Si oui, pouvez-vous en faire un objet de commentaire attaché au triangle? – vbnet3d

+0

@ vbnet3d il serait en lecture seule ... Ce que vous décrivez sonne comme Il serait parfait tant qu'il apparaît lorsque survolé et disparaît quand il n'est pas plané – Bob

+0

Selon [MSDN] (https: // msdn .microsoft.com/fr-fr/library/office/microsoft.office.interop.excel.range.addcomment.aspx), vous pouvez ajouter un commentaire à une plage - pas sûr d'une forme. – vbnet3d

Répondre

2

Selon MSDN, des commentaires peuvent être ajoutés à des plages. Pour que cela fonctionne pour votre application, il vous suffit de sélectionner la plage correspondant à votre forme, puis d'appeler AddComment().

Les coordonnées numériques d'une cellule peut être utilisée pour déterminer le nom de cellule réelle (c.-à-E5) à l'aide du code comme le suivant (source):

address = xlWorkSheet.Cells(RowVariable, ColVariable).Address 

Ceci peut être suivi par:

xlWorkSheet.Range(address).AddComment("This is a comment") 
+0

Génial, je l'apprécie vraiment. Ça a marché ... Faut-il poser une question pour réduire la taille de la zone de commentaire Plus grand ou la police dans la zone de commentaire? – Bob

+0

Malheureusement, je n'ai aucune expérience avec cela - mais comme cela peut être fait manuellement, je suppose que cela doit être possible grâce à interop. [Commencez ici] (https://msdn.microsoft.com/en-us/library/office/microsoft.office.interop.excel.comment_properties.aspx) et notez qu'il existe une propriété Shape pour le commentaire. Je m'attends à ce que ce dont vous avez besoin soit probablement enterré quelque part. – vbnet3d

+0

Ah c'est magnifique. Merci encore!! – Bob