如何在Excel實現採用星星符號評級的功能?
就像APP store的打分功能一樣,在某單元格里默認有一至五顆星(空心),滑鼠點擊到第四顆星後,前四顆即變成實心
如果限定在單個單元格內,可以藉助API函數用vba來完成。我們可以利用api函數求得當前單元格的位置和當前滑鼠的位置,還有單元格的寬度,通過這些數據,可以很容易判斷滑鼠在單元格中的相對位置,進而判斷我們選擇了哪個星星。
該功能在一些諮詢意見表、調查表等中,有一定的實際意義。
相關案例請參考附件。
評分.xlsm_免費高速下載&<部份代碼參考了網上相關資源&>
應該無法實現
但可以用變通的方法,比如:
用公式,假設在A1單元格輸入分數(1-5分):
=LOOKUP(A1,{1,2,3,4,5},{"☆☆☆☆","☆☆☆","☆☆","☆",""})
用VBA,使用Change或Select事件,
Change事件:假設在A1-E1單元格分別輸入或☆,只要某單元格變化,就將前面的單元格的變為,後面的變為☆。
Select事件:選擇某單元格時自動前本單元格之前的單元格變為,之後的變為☆。
期待知友更好的答案。
---------
3.17更正:實際上可以實現,張小新用很巧妙的方法實現了,詳見張小新的答案。
除了vlookup函數,可以用repeat函數。
假設在a1輸入評分1-5
=repeat("",a1)repeat("☆",5-a1)
簡潔一點
以我的能力在EXCEL裡面是做不到的,可能其它人能做到,謝謝邀請
我用的小白辦法,不能實現像題主說的點到哪顆星前面星星duang都變實心的特效,但是可以達到用星星評分的目的,簡單粗暴好操作。
就是如圖該列每個單元格下拉以後有不同星級的選項,直接選擇就闊以了。
實現方法:
如何在Excel的單元格中加入下拉選項(http://jingyan.baidu.com/article/03b2f78c4ba8a05ea237ae95.html)
最後一步中「序列」中填「☆☆☆☆☆,☆☆☆☆,☆☆☆,☆☆,☆,」好了。
雖然不夠高大上555555
REPET函數,按給定頻率重複給定內容
做得到啊,樓上已經快接近真相啦. 用vba寫宏,當雙擊單元格的時候, 首先判斷下是第幾顆星的位置,之後將前後的星改成指定的空心或實心的樣式. 但是啊,還不如用前面的lookup來的快捷
推薦閱讀:
※excel數據透視表分組?
※如何處理EXCEL中存在大量合併單元格的跨頁斷行問題?
※如何將多個sheet的同一列數據快速放到一張表,並以sheet名作為相應每一列的名字?
TAG:MicrosoftExcel | Excel使用 | Excel圖表繪製 | Excel編程 | Excel技巧 |