溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

excel中的數(shù)據(jù)地圖透明度填充法是什么

發(fā)布時間:2022-01-14 20:31:49 來源:億速云 閱讀:197 作者:柒染 欄目:大數(shù)據(jù)

這篇文章給大家介紹excel中的數(shù)據(jù)地圖透明度填充法是什么,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

excel(VBA)數(shù)據(jù)地圖透明度填充法。

這種方法的制作步驟難度與前一篇相比都較低,但是涉及到的VBA代碼卻要比前一篇略復(fù)雜一點(diǎn)。

1、首先我們要準(zhǔn)備的是世界地圖素材:

本案例中數(shù)據(jù)多達(dá)191個國家,每個國家圖形名稱都取得是“S_”+“前三個字母大寫”,需要一一命名,當(dāng)然這個過程是非常耗時費(fèi)力的,推送后我會將本例源文件貢獻(xiàn),如感興趣,可以直接拿案例中已經(jīng)命名好的矢量圖形嘗試著去做。

2、添加透明度列變量

=($E$1-D4)/($E$1-$E$2)*90%

根據(jù)指標(biāo)值的范圍將指標(biāo)值轉(zhuǎn)化為0%~90%的透明度指標(biāo)。

3、選擇透明度填充的主色,作為填充色色調(diào)的主題色。

將選好的主色填充到指定單元格中。(H3)

4、插入一個矩形(命名為color_label)將作為地圖圖例

5、輸入VBA填色代碼

ALT+F11打開VBA編輯器,輸入以下代碼:

 Sub fill_color_vba()

    Application.CalculateFull  '模擬效果用

    On Error Resume Next '個別國家無圖形,忽略

    Application.ScreenUpdating = False '暫停刷新屏幕

    For i = 4 To 193  '為數(shù)據(jù)源的起始和結(jié)束行號

        ActiveSheet.Shapes(Range("sheet1!C" & i).Value).Fill.ForeColor.RGB = Range("SHEET1!H3").Interior.Color

        '使用選定的顏色填充圖形

        ActiveSheet.Shapes(Range("sheet1!C" & i).Value).Fill.Transparency = Range("SHEET1!E" & i).Value

        '按匹配的透明度值設(shè)置圖形的透明度

    Next i

    ActiveSheet.Shapes("color_label").Fill.ForeColor.RGB = Range("SHEET1!H3").Interior.Color

        '設(shè)置圖例的填充色

    ActiveSheet.Shapes("color_label").Fill.TwoColorGradient msoGradientVertical, 2

    'ActiveSheet.Shapes("color_label").Fill.OneColorGradient msoGradientVertical, 2, 0.23

        '設(shè)置圖例的漸變效果

    Application.ScreenUpdating = True '恢復(fù)刷新屏幕

End Sub

6、在開發(fā)工具中插入一個按鈕,并的制定宏代碼(命名為填色)。

然后點(diǎn)擊一下填色按鈕,看下神奇的效果吧~

最后將插入的矩形(作為地圖圖例)放在數(shù)據(jù)地圖的合適位置,使用照相機(jī)快照功能將整個數(shù)據(jù)地圖牌照引用。

保存的時候仍然要保存為xlsm格式的帶宏文件。

只需要將你提前準(zhǔn)備好的填充顏色主色復(fù)制進(jìn)填色單元格中,然后單擊填色按鈕,就可以實現(xiàn)不同色調(diào)的填充效果。

關(guān)于excel中的數(shù)據(jù)地圖透明度填充法是什么就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI