Turinys
Šiame straipsnyje parodysiu, kaip "Excel" programoje galite sukurti dinaminę diagramą naudodami VBA .
Atsisiųsti praktikos sąsiuvinį
Atsisiųskite šį pratybų sąsiuvinį ir atlikite pratimus, kol skaitysite šį straipsnį.
Dinaminė diagrama programoje Excel.xlsm5 paprasti žingsniai, kaip sukurti dinaminę diagramą naudojant "Excel VBA
Čia turime darbalapį, pavadintą 1 lapas kurioje yra lentelė su pajamos ir įmonės pajamas per kelerius metus.
Šiandien mūsų tikslas - sukurti dinaminė diagrama iš šios lentelės, naudodami "Excel VBA .
⧪ 1 žingsnis: "Visual Basic" lango atidarymas
Paspauskite ALT+F11 klaviatūroje, kad atidarytumėte "Visual Basic langas.
⧪ 2 žingsnis: naujo modulio įterpimas
Eikite į Insert> Modulis parinktį įrankių juostoje. Spustelėkite Modulis . Įdiegtas naujas modulis, vadinamas Modulis1 bus įterptas.
⧪ 3 veiksmas: VBA kodo įvedimas
Tai svarbiausias žingsnis. Įdėkite šiuos VBA Kodas modulyje.
⧭ VBA kodas:
Sub Create_Dynamic_Chart() Application.ScreenUpdating = False With ActiveSheet.Shapes(Application.Caller).Fill.ForeColor If .Brightness = 0 Then .Brightness = -0.150000006 Else .Brightness = 0 End If End With Dim Sequence() As String Desired_Shapes = Array("Suapvalintas stačiakampis 1", "Suapvalintas stačiakampis 2", "Suapvalintas stačiakampis 3") For i = LBound(Desired_Shapes) ToUBound(Desired_Shapes) With ActiveSheet.Shapes(Desired_Shapes(i)) If .Fill.ForeColor.Brightness = -0.150000006 Then Sequence(UBound(Sequence)) = .TextFrame2.TextRange.Characters.Text ReDim Preserve Sequence(UBound(Series) + 1) End If End With Next i If UBound(Sequence)> 0 Then ReDim Preserve Sequence(UBound(Sequence) - 1)Worksheets("Sheet1").ListObjects("Table1").Range.AutoFilter Field:=1 Worksheets("Sheet1").ListObjects("Table1").Range.AutoFilter _ Field:=1, Criteria1:=Sequence, Operator:=xlFilterValues Application.ScreenUpdating = True End Sub
⧪ 4 veiksmas: darbaknygės išsaugojimas XLSM formatu
Tada grįžkite į sąsiuvinį ir išsaugokite jį kaip "Excel" makrokomandos įgalintas darbaknygis .
⧪ 5 veiksmas: galutinis rezultatas
Paleiskite kodą iš Paleisti sub / UserForm įrankių juostos parinktį.
Pagal lentelę sukurtą dinaminę diagramą rasite Lapas2 darbo lape.
Dalykai, kuriuos reikia prisiminti
Lentelė yra geriausias būdas sukurti dinamišką diagramą. Kadangi, jei į lentelę pridėsite ar pašalinsite elementą, lentelė automatiškai prisitaikys, taip pat ir diagrama. Tačiau yra ir kitų būdų tai padaryti, pvz. Pavadintas diapazonas .