Skaitytojas iš Čekijos paklausė, kaip sukurti langelį diagramoje, kad būtų parodytas procentas.
Jei langelio vertė buvo 37%, kaip aš galiu užpildyti 37% langelio iš apačios spalva?

Mala Singh iš mūsų grafikos padalinio pateikė šį įdomų sprendimą norimam efektui pasiekti. Mala sukūrė darbalapį, kuriame kiekviena eilutė iš tikrųjų susideda iš 2 sujungtų eilučių. B2 ir B3 ląstelės sujungiamos į vieną langelį. Pakeitus B2 reikšmę, šiek tiek VBA kodo darbalapio srityje automatiškai sureguliuos 2 ir 3 eilutės aukštį. C3 langelis yra mėlynos spalvos, o langelis C2 - baltos spalvos. Poveikis yra tas, kad C stulpelyje rodoma stulpelių diagrama langelyje. Šis paveikslėlis rodo įvairius mėlynos juostos aukštis ląstelėse C2 – C13.

Pirmasis žingsnis yra sulieti B2 ir B3 langelius į vieną langelį. Jūs pasirinksite langelius B2 ir B3. Meniu pasirinkite Formatas, Langeliai. Eikite į skirtuką „Lygiavimas“. Pažymėkite langelį Sujungti langelius. Tai paskatins B2 ir B3 veikti kaip viena ląstelė, vadinama B2.
Palikite C2 langelį neužpildydami ir naudokite bet kokį spalvotą langelį C3.
Šios technikos kodas nėra įdėtas į įprastą modulį. Tai yra „įvykių apdorojimo“ kodas ir jis turi būti įdėtas į šio konkretaus darbalapio kodo modulį. Perskaitykite renginio makrokomandą, norėdami pridėti kelią ir failo pavadinimą į „Excel“ antraštę, kad pamatytumėte, kaip atidaryti darbalapio kodo modulį.
„Sheet1“ (ar bet kuriame kitame lape, su kuriuo dirbate) kodo modulyje įveskite šį kodą.
Private Sub Worksheet_Change(ByVal Target As Range) Dim cell As Range For Each cell In Target.Cells If cell.Column = 2 And cell.Row> 1 Then If cell.Value> 1 Or cell.Value < 0 Then cell.Select MsgBox ("Value must be between 0 and 100%") End If If IsEmpty(cell) Or cell.Value = 0 Then cell.Range("B1:B2").RowHeight = 25 'cell.Range("B2").Interior.ColorIndex = xlNone Else On Error Resume Next cell.Range("B1").RowHeight = 50 * (1 - cell.Value) With cell.Range("B2") .RowHeight = 50 * cell.Value '.Interior.Color = RGB(0, 0, 255) On Error GoTo 0 End With End If End If Next End Sub
B stulpelyje galite pakartoti langelių porų sujungimo procesą.
Ačiū Mala Singh už šį sprendimą. „Mala“ gali kurti individualius diagramų sprendimus, kad atitiktų bet kokius poreikius. Jis prisidėjo prie VBA ir „Macros for Excel“ diagramų sudarymo skyriaus.