Kulur ta 'chart miċ-ċelloli bid-dejta tagħha

Formulazzjoni tal-problema

Nixtieq li l-kolonni fuq l-istogramma (jew slices fuq il-pie chart, eċċ.) ikollhom awtomatikament il-kulur li ntuża biex jimlew iċ-ċelloli korrispondenti bid-dejta tas-sors:

Waqt li jantiċipaw l-għajta sorpriża u indignant ta’ sħabi individwali, ta’ min jinnota li, ovvjament, il-kulur tal-mili fid-dijagramma jista’ jinbidel ukoll manwalment (ikklikkja bil-lemin fuq il-kolonna – Format punt/serje (Format punt tad-dejta/serje) eċċ. – ħadd ma jargumenta. Iżda fil-prattika, hemm ħafna sitwazzjonijiet meta huwa aktar faċli u aktar konvenjenti li tagħmel dan direttament fiċ-ċelloli bid-dejta, u mbagħad iċ-ċart għandha mbagħad terġa 'tinbeda awtomatikament. Ipprova, pereżempju, issettja l-mili skond ir-reġjun għall-kolonni f'din it-tabella:

Naħseb li tieħu l-idea, hux?

Soluzzjoni

Xejn ħlief makro jista 'jagħmel dan. Għalhekk, niftħu Editur Visual Basic mit-tab iżviluppatur (Iżviluppatur — Editur Bażiku Viżwali) jew agħfas is-shortcut tat-tastiera Alt + F11, daħħal modulu vojt ġdid permezz tal-menu Daħħal – Modulu u kkopja t-test ta 'tali makro hemmhekk, li se tagħmel ix-xogħol kollu:

Sub SetChartColorsFromDataCells() If TypeName(Selezzjoni) <> "ChartArea" Imbagħad MsgBox "Сначала выделите диаграмму!" Ħruġ Sub End Jekk Issettja c = ActiveChart Għal j = 1 Sa c.SeriesCollection.Count f = c.SeriesCollection (j).Formula m = Split (f, ",") Issettja r = Range (m (2)) Għal i = 1 To r.Cells.Count c.SeriesCollection(j).Punti(i).Format.Fill.ForeColor.RGB = _ r.Cells(i).Interior.Kulur Next i Next j End Sub  

Issa tista 'tagħlaq Visual Basic u terġa' lura għal Excel. L-użu tal-makro maħluqa huwa sempliċi ħafna. Agħżel iċ-ċart (żona taċ-ċart, mhux żona tal-plott, grilja jew kolonni!):

u mexxi l-makro tagħna bil-buttuna Macros tab iżviluppatur (Żviluppatur — Makros) jew b'shortcut tat-tastiera Alt + F8. Fl-istess tieqa, f'każ ta 'użu frekwenti, tista' tassenja shortcut tat-tastiera lill-makro billi tuża l-buttuna parametri (Għażliet).

PS

L-unika fly fl-ingwent hija l-impossibbiltà li tintuża funzjoni simili għal każijiet fejn il-kulur huwa assenjat liċ-ċelloli tad-dejta tas-sors bl-użu ta 'regoli tal-ifformattjar kondizzjonali. Sfortunatament, Visual Basic m'għandux għodda integrata għall-qari ta 'dawn il-kuluri. Hemm, ovvjament, ċerti "krozzi", iżda ma jaħdmux għall-każijiet kollha u mhux fil-verżjonijiet kollha.

  • X'inhuma macros, kif tużahom, fejn daħħal il-kodiċi makro fil-Visual Basic
  • Formatting Kundizzjonali f'Excel 2007-2013
  • X'hemm Ġdid fiċ-Ċarts f'Excel 2013

Ħalli Irrispondi