小生は、エクセル・グラフで連戦練磨と言うのではないので、あくまで参考意見です。
(1)これはエクセル独自ではなく、何か専用のソフトを使った、ものではないでしょうか。
市販ソフトでなくても、最低AddInソフトのような。
(2)私なりには
(A)「面グラフ」(2D)を2時期データを同位置に重ねて、下の方を「塗りつぶしなし」に、したのではないか、と思った。
(B)かつそれを何個かのペア―個でも、同一のチャート画面に出して、同じことをしているのではないか?
でも1ペアでも手作業(VBAでも)が大変で、上記はやれたとしても、相当複雑で、データそのモノが条件(*)に合わないと、帯状にはならないので、小生の意見も自信がない。(*)単純に、前年同期で全月・期で増加。
例データ Sheet2 A1:F3 梅田店の売り上げの昨年と今年のデータだとしてください。
ーー ーー1月 2月 3月 4月 5月
梅田店A 25 30 40 35 45
梅田店B 20 27 44 30 42
前年同月を下回らない。
ーー
標準モジュールに
Sub test01()
'-----テストの繰り返し用に、現在のグラフを消去
Dim i As Long
With ActiveSheet
For i = .ChartObjects.Count To 1 Step -1
.ChartObjects(i).Delete
Next i
End With
'------以下が実質の開始部分
stname = ActiveSheet.Name
MsgBox stname
'------------------
ypos = 220
'作成領域
Set tch = ActiveSheet.ChartObjects.Add(20, ypos, 400, 200)
'面
tch.Chart.ChartType = xlAreaStacked ' xlArea
'-----第1データ指定
tch.Chart.SetSourceData Source:=Sheets(2).Range("a1:f2"), PlotBy:=xlRows
'------
tch.Chart.HasTitle = True
tch.Chart.ChartTitle.Characters.Text = "売上推移 面"
MsgBox "AAA"
'-------第2データ指定
Range("A1:F1").Copy Range("a10:f10")
Range("A3:F3").Copy Range("a11:f11")
With ActiveSheet.ChartObjects(1).Chart.SeriesCollection.NewSeries
'.XValues = Sheets(2).Range("a10:f11")
.Name = "梅田店B"
.Values = Range("B11:f11")
End With
End Sub
その後、下の方のグラフで、データ系列の書式設定ー塗りつぶしー塗りつぶしなし
で、白色(色なし)にしてください。(VBAコードをWEBで調べたが、見つからず、時間を食った、ので。後免。)
==
こういうエクセルの質問には、データ例を挙げるべきものだ。
それを見れば、どういう方法でやったか、核心に迫れると予想。
質問者は、最終の形ばかり注目して、方法は、データによるということを、認識できてないのが多い。
お礼
重ねてのご回答ありがとうございました。 Excelでは(他のツールでも?)一筋縄ではいかないことは分かってきました。 >各商品の、年度ごとの、売上高の変動が大きいため、太くなったり狭くなったりする。 >売上高を表示する順序は、各年度で固定されている(年度ごと売上げ高順などではない) →年毎に量に応じて太くなったり細くなったりはおっしゃる通りですが、各年のポイントにおいては、各データに隙間がなく、上が最も大きいデータ、下に行くに連れて順に小さくなるという順番に並んでいます。(従って、年毎に大小関係が逆転すると途中で色帯が交差する) >どうでもよいが、Cascade,CTZ,Mozaicなどは何の名前ですか? →ビールの製造に使われるホップ(苦味成分の元になる植物)の品種です。それぞれの品種の年毎の作付面積の変化を示したグラフとなっています。