Opprett i cellekolonnediagram - Excel-tips

En leser fra Tsjekkia spurte om å lage et celletabell for å illustrere en prosentandel.

Hvis verdien i en celle var 37%, hvordan kan jeg fylle 37% av cellen fra bunnen med en farge?

Mala Singh fra vår grafikk-avdeling kom med denne interessante løsningen for å produsere ønsket effekt. Mala bygde et regneark der hver rad faktisk består av to sammenslåtte rader. Cellene B2 og B3 slås sammen i en enkelt celle. Når verdien i B2 endres, vil litt VBA-kode i regnearkruten automatisk justere høyden på rad 2 og rad 3. Celle C3 er farget blå og celle C2 er hvit. Effekten er at kolonne C ser ut til å vise et kolonnediagram i cellen. Dette bildet viser forskjellige høyder av den blå linjen i celler C2 til C13.

Det første trinnet er å slå sammen cellene B2 og B3 til en enkelt celle. Du vil velge cellene B2 og B3. Velg Format, celler fra menyen. Gå til fanen Justering. Merk av for Slå sammen celler. Dette vil føre til at B2 og B3 fungerer som en enkelt celle kalt B2.

La celle C2 være uten fyll og bruk fargefyll for celle C3.

Kode for denne teknikken plasseres ikke i en vanlig modul. Det er "hendelsesbehandler" -kode og må plasseres på kodemodulen for dette spesielle regnearket. Les hendelsesmakro for å legge til bane og filnavn til Excel Header-artikkelen for å se hvordan du åpner kodemodulen for et regneark.

Skriv inn følgende kode på kodemodulen for Sheet1 (eller hvilket ark du jobber med).

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

Du kan gjenta prosessen med å slå sammen par av celler i kolonne B.

Takk til Mala Singh for denne løsningen. Mala kan designe tilpassede kartløsninger for å dekke ethvert behov. Han bidro til kartkapitlet i VBA og Makroer for Excel.

Interessante artikler...