グラフシートのビジュアル調整をVBAで行いたい!

タイトルの通り、グラフシートをVBAで調整したいです。

下記のコードは①②のように動きます。
⓵CSVファイルのデータをExcelファイル内の元々作成しておいたにインポート
②インポートしたデータからピボットテーブルを別シートに作成し、別シートにグラフ化まで行う

そして、このコード内にグラフシートを調整するコードを追加したいのですが、どこに何を加えたらいいでしょうか。
具体的には、
・グラフシートの印刷向きを縦向きにしたい
・Y軸の名前のフォントサイズを自動で変わるようにしたい
フォントサイズが大きくて全て入りきらないため
・横棒グラフ要素の色を変えたい
・横棒グラフの合計値をグラフの上(外)に表示したい

Sub CSVファイルを読み込みグラフ作製()
Dim Csv_Import_File 'Excelファイルに取り込むCSVファイルの名前を入れ込む変数'
Csv_Import_File = Application.GetOpenFilename("CSVファイル,*.csv") 'CSVファイルを選択する'
If Csv_Import_File = "False" Then Exit Sub 'キャンセルなら終了'

Dim ws As Worksheet Set ws = ThisWorkbook.Worksheets("〇〇データ") ws.Range("A1:ZZ100000").ClearContents '「〇〇データ」シートのセル「A1~ZZ100000」をクリアする' With Workbooks.Open(Csv_Import_File) .Sheets(1).Cells.Copy ws.Range("A1") '全てのデータをこのブックの「〇〇データ」シートにコピー' .Close 'CSVファイルを閉じる' End With With ws.Columns("O") 'O列を指定' .Replace what:="AAA", replacement:="AAAA" 'AAAという文字列をAAAAに変換' .Replace what:="BBB", replacement:="BBBB" 'BBBという文字列をBBBBに変換' .Replace what:="CCC", replacement:="CCCC" 'CCCという文字列をCCCCに変換' End With '「ピボットテーブル」というシートを最後尾に追加する Worksheets.Add(After:=Worksheets(Worksheets.Count)).Name = "ピボットテーブル" '元データの範囲を格納 Set A = Worksheets("〇〇データ").Range("A1").CurrentRegion 'ピボットテーブルを作成する ActiveWorkbook.PivotCaches.Create(xlDatabase, A).CreatePivotTable Range("A3") 'フィールドを設定 With ActiveSheet.PivotTables(1) .PivotFields("名前").Orientation = xlRowField '行フィールドを設定 .PivotFields("グラフ化したいデータ").Orientation = xlColumnField '列フィールドを設定 .PivotFields("グラフ化したいデータ").Orientation = xlDataField '値フィールドを設定 Dim p As PivotItem 'グラフに表示する列ラベルを指定する For Each p In .PivotFields("グラフ化したいデータ").PivotItems p.Visible = (p.Name = "AAAA" Or p.Name = "BBBB" Or p.Name = "CCCC" Or p.Name = "〇〇〇〇") '指定したい列ラベル Next End With 'グラフシートを追加 Charts.Add.Name = "名前別 グラフ化したいデータ" ' 位置を指定せずに追加 ActiveChart.Move After:=Sheets(Sheets.Count) ' 末尾へ移動 'グラフを設定する ActiveChart.ChartType = xlBarStacked '集合横棒グラフにする ActiveChart.SetSourceData Worksheets("ピボットテーブル").Range("A3").CurrentRegion '参照範囲を設定

ココまで皆様に教えて頂きながら、ネットで調べながら作成したコードです。
分かりづらい質問で恐縮なのですが、何卒、アドバイスまたは解をいただけると嬉しいです。

よろしくお願いいたします。

コメントを投稿

0 コメント