Korosta kartta Excelissä Excelin avattavan valinnan perusteella

Sisällysluettelo

Tässä on siisti temppu ihmisille, jotka käyttävät karttoja Excelissä. Tässä blogissa selitän kuinka korostaa karttaa Excelissä avattavan valinnan perusteella.

Otin muokattavan kartan Yhdysvalloista. Ajatuksena on korostaa Yhdysvaltojen osavaltiota, kun sen nimi valitaan avattavasta valikosta.

Jotain alla olevan kuvan mukaisesti:

Ennen kuin näytän sinulle koodin, tässä on muutamia tämän temppun edellytyksiä.

  1. Hanki muokattava Yhdysvaltain kartta, jossa voit valita erilaisia ​​muotoja, jotka haluat korostaa
  2. Luo luettelo kaikista 50 tilasta yhteen sarakkeeseen, ja sen oikealla puolella olevaan sarakkeeseen kirjoitin tila 1, tila 2 ja niin edelleen
  3. Nimeä jokainen muoto kartalla. Esimerkiksi minulla on täällä 50 muotoa 50 valtiolle, ja olen nimittänyt jokaisen muodon tilaksi 1, tila 2, tila 3 ja niin edelleen … Voit tehdä tämän valitsemalla minkä tahansa muodon ja siirtymällä Nimi -ruutuun kaavapalkin vasemmassa reunassa ja kirjoita sen nimi Osavaltion numero -sarakkeesta. Valitsin esimerkiksi Alabaman ja annoin sille valtion 1.
  4. Luo Excel -pudotusvalikko, jossa on kaikkien osavaltioiden nimet ($ B $ 2 tässä tapauksessa)
  5. Käytä Vlookup -toimintoa tilanumeron purkamiseen, kun tila valitaan avattavasta valikosta. Tässä on kaava, jota olen käyttänyt solussa $ B $ 3
    = VLOOKUP (B2, ”osavaltioluettelo”! $ B $ 3: $ C $ 52,2, FALSE)
Koodi korostaaksesi kartan Excelissä
Yksityinen alityöarkin_muutos (ByVal -kohdealue) Dim N kokonaislukuna Dim ShapeName Kuten merkkijono N = ActiveSheet.Shapes.count If Target.Address = "$ B $ 2" Sitten For i = 1 to N ShapeName = ActiveSheet.Shapes (i). Nimi If Left (ShapeName, 6) = "State" Sitten ActiveSheet.Shapes (i) .Valitse With Selection.ShapeRange.Fill .Visible = msoFalse .Transparency = 1 Lopeta loppuun, jos seuraava i StateNumber = Range ("$ B $ 3" ) .Arvo ActiveSheet.Shapes (StateNumber) .Valitse Selection.ShapeRange.Fill .Visible = msoTrue .Visible = msoTrue .ForeColor.RGB = RGB (192, 0, 0) .Transparency = 0 .Solid End ActiveSheet.Range ( "$ B $ 2"). Valitse End If End Sub

Liitä tämä koodi noudattamalla näitä yksinkertaisia ​​ohjeita

  1. Napsauta ensin hiiren kakkospainikkeella taulukon välilehteä, jossa on kartta, ja valitse "Näytä koodi". Tämä avaa VB -editorin.
  2. Liitä koodi.

Tulet auttaa kehittämään sivuston jakaminen sivu ystävillesi

wave wave wave wave wave