Iezīmējiet karti programmā Excel, pamatojoties uz nolaižamo izvēli programmā Excel

Satura rādītājs

Šeit ir veikls triks cilvēkiem, kuri izmanto kartes programmā Excel. Šajā emuārā es paskaidrošu, kā izcelt karti programmā Excel, pamatojoties uz nolaižamo izvēli.

Esmu paņēmis rediģējamu ASV karti. Ideja ir izcelt ASV štatu, kad tā nosaukums ir atlasīts nolaižamajā izvēlnē.

Kaut kas, kā parādīts zemāk esošajā attēlā:

Pirms es jums parādīšu kodu, šeit ir daži šī trika priekšnoteikumi.

  1. Iegūstiet rediģējamu ASV karti, kurā varat atlasīt dažādas formas, kuras vēlaties izcelt
  2. Vienā slejā izveidojiet sarakstu ar visiem 50 štatiem, un labajā slejā es uzrakstīju stāvokli 1, valsti 2 utt.
  3. Nosauciet kartē katru formu. Piemēram, man šeit ir 50 formas 50 štatiem, un es katru formu esmu nosaucis par stāvokli 1, valsti 2, valsti 3 un tā tālāk … Lai to izdarītu, atlasiet jebkuru formu un dodieties uz nosaukumu lodziņu, kas ir ieslēgts formulas joslas kreisajā pusē un kolonnā Valsts numurs ievadiet tās nosaukumu. Piemēram, es izvēlējos Alabamu un nosaucu to par valsti 1.
  4. Izveidojiet Excel nolaižamo sarakstu ar visu štatu nosaukumiem (šajā gadījumā $ B $ 2)
  5. Izmantojiet funkciju Vlookup, lai izvilktu valsts numuru, kad nolaižamajā izvēlnē ir atlasīts stāvoklis. Šeit ir formula, kuru esmu izmantojis šūnā $ B $ 3
    = VLOOKUP (B2, “štatu saraksts”! $ B $ 3: $ C $ 52,2, FALSE)
Kods, lai izceltu karti programmā Excel
Privāta apakšdarblapas_maiņa (ByVal mērķis kā diapazons) Dim N kā vesels skaitlis Dim ShapeName Kā virkne N = ActiveSheet.Shapes.count If Target.Address = "$ B $ 2" Tad Attiecībā uz i = 1 uz N ShapeName = ActiveSheet.Shapes (i). Nosaukums Ja pa kreisi (ShapeName, 6) = "Valsts", tad ActiveSheet.Shapes (i). Atlasiet ar Selection.ShapeRange.Fill .Visible = msoFalse .Transparency = 1 Beigt ar beigas, ja nākamā i StateNumber = Diapazons ("$ B $ 3" ) .Value ActiveSheet.Shapes (StateNumber). Atlasiet ar Selection.ShapeRange.Fill .Visible = msoTrue .Visible = msoTrue .ForeColor.RGB = RGB (192, 0, 0) .Transparency = 0 .Solid End with ActiveSheet.Range ( "$ B $ 2"). Atlasiet Beigt, ja beigt apakš

Ielīmējot šo kodu, veiciet šīs vienkāršās darbības

  1. Vispirms ar peles labo pogu noklikšķiniet uz lapas cilnes, kurā ir karte, un atlasiet “Skatīt kodu”. Tas atvērs VB redaktoru.
  2. Ielīmējiet kodu.
wave wave wave wave wave