我是VBA的新手,我有一个任务是找到一种方法来实现像Amazon / Ebay中的5星评价,图形星本身就是excel表格。有可能吗?甚至与其他技术结合使用。
我需要的只是一些点击,如何做,以及从哪里开始。
答案 0 :(得分:0)
根据您的上一次评论,我想仅仅草拟手动进行此类评级的基本概念。由于我无法将其纳入评论框中,因此我将其作为概念草案放在此处(这不是尝试成为解决方案):
(1)在纸张上获得明星就像那样简单
Sheet1.Shapes.AddShape Type:=msoShape5pointStar, _
Left:=100, Top:=100, Width:=7.2, Height:=7.2
(2)通过在Left
添加先前星号和一些额外空格的宽度,在它旁边再加上四颗星应该很简单。
(3)使用预设(Office 2010 +)
为您的星星黄色或白色着色.ShapeStyle = msoShapeStylePreset12
(4)为了在包含应该评级的值的单元格旁边的工作表上找到星星,您可以使用以下方法,假设该值在单元格A1中:
.Left = Sheets(1).Range("A1").Left + Sheets(1).Range("A1").Width
当然,除此之外还有更多内容。您必须确定要为其创建星形的单元格范围。此外,如果有人添加列或更改列的宽度,则所有星星可能会更改,并且必须再次绘制。此外,您必须确保B列宽度足以容纳所有星星。但这是基本概念(正如我试图做的那样)。