Warna Carta Jadual Pangsi - Petua Excel

Isi kandungan

Shari menghantar soalan Excel minggu ini.

Saya belum dapat menemui jawapannya dari jabatan IT kami, fail bantuan Excel, atau bantuan dalam talian Microsoft Excel, dan berharap anda dapat membantu.

Saya menganalisis data Excel selama dua puluh tahun, dan perlu membuat carta pai Excel untuk setiap tahun. Carta Excel berdasarkan jadual pangsi (atau Carta Pivot di Excel 2000), dengan tahun sebagai medan halaman. Masalahnya ialah tidak semua tahun mengandungi item yang sama, jadi setiap carta Excel akan menggunakan warna yang berbeza untuk yang sama hirisan pai.

Kami cuba membandingkan data sepanjang 20 tahun ini, jadi penting untuk mempunyai warna yang sama untuk setiap carta. Saya akhirnya perlu mengubah setiap kepingan pada banyak carta agar sesuai dengan yang pertama, kadang-kadang beberapa kali kerana warnanya boleh berubah jika data berubah dan saya harus mengira semula jadual pangsi berdasarkan carta.

MrExcel mencuba carta pangsi untuk pertama kalinya. Carta pangsi adalah kaedah yang sangat kuat untuk membuat carta untuk beberapa senario data yang berbeza, tetapi mereka mempunyai kekurangan yang menjengkelkan ini. Saya menyediakan jadual pangsi dengan tahun kelas sebagai baris, tahun sebagai halaman. Saya meminta tahun kelas disusun berdasarkan skor menurun. Semasa anda menukar carta pangsi dari tahun ke tahun, warna potongan pai yang berkaitan dengan Freshman akan berubah. Beberapa tahun ada ahli dari keempat kelas, tahun lain ada ahli dari 3 kelas sahaja.

Contoh Carta Pangsi

Excel menggunakan susunan warna lalai untuk setiap potongan, jadi warna yang sesuai akan berubah dari tahun ke tahun. Saya dapat melihat pengurus saya menggelengkan kepalanya dengan rasa jijik ketika saya memberikannya carta ini.

Terdapat cara dengan makro asas visual untuk menyelesaikan masalah ini. Sekiranya anda menetapkan datalabels untuk menampilkan nama label, maka adalah mungkin untuk mencari nama setiap potongan dari dalam visual visual. Sebaik sahaja anda mempunyai nama, anda boleh mengecat semula warna potongan berdasarkan nilai namanya.

Contoh Carta Pangsi

Excel menggunakan warna di atas untuk tahun 1990, tetapi pada tahun 1991 warnanya berubah seiring dengan jumlah item dan urutannya berubah:

Makro berikut dikodkan dengan teliti untuk contoh khusus Shari di mana dia mempunyai kemungkinan nilai Freshman, Sophomore, Junior dan Senior. Dengan menambahkan pernyataan Kes tambahan dengan indeks warna yang berbeza, anda boleh menyesuaikannya untuk menangani situasi tertentu anda.

Sub ColorPieSlices() ' Copyright 1999.com ' This macro will re-color the pie slices in a chart ' So that slices for a specific category are similarly colored ' Select the chart before calling the macro ' ' Find the number of pie slices in this chart NumPoints = ActiveChart.SeriesCollection(1).Points.Count ' Loop through each pie slice For x = 1 To NumPoints ' Save the label currently attached to this slice If ActiveChart.SeriesCollection(1). _ Points(x).HasDataLabel = True Then SavePtLabel = ActiveChart.SeriesCollection(1) _ .Points(x).DataLabel.Text Else SavePtLabel = "" End If ' Assign a new data label of just the point name ActiveChart.SeriesCollection(1).Points(x).ApplyDataLabels Type:= _ xlDataLabelsShowLabel, AutoText:=True ThisPt = ActiveChart.SeriesCollection(1).Points(x).DataLabel.Text ' Based on the label of this slice, set the color Select Case ThisPt Case "Freshman" ActiveChart.SeriesCollection(1). _ Points(x).Interior.ColorIndex = 3 Case "Sophomore" ActiveChart.SeriesCollection(1). _ Points(x).Interior.ColorIndex = 4 Case "Junior" ActiveChart.SeriesCollection(1). _ Points(x).Interior.ColorIndex = 5 Case "Senior" ActiveChart.SeriesCollection(1). _ Points(x).Interior.ColorIndex = 6 Case Else ' Add code here to handle an unexpected label End Select ' Return the label to it's original pre-macro state ActiveChart.SeriesCollection(1). _ Points(x).DataLabel.Text = SavePtLabel Next x End Sub

Mulakan editor VB dengan alt-F11. Do Insert - Modul. Prosedur Masukkan. Ketik ColorPieSlices sebagai Nama dan klik OK. Masukkan makro di atas.

Untuk menjadikan hidup lebih mudah, tetapkan makro ke jalan pintas di Excel. Di Excel, lakukan Alat - Makro. Serlahkan ColorPieSlices dan klik butang pilihan. Dalam kotak kekunci pintasan, masukkan "d". Klik OK dan tutup kotak dialog Makro dengan mengklik "x" di sudut kanan atas. Sekarang, setelah anda menukar Pivot Chart anda, anda boleh menekan Ctrl + D untuk mewarnakan kembali kepingan pai ke set warna pilihan anda.

Artikel menarik...