■実現したいこと
エクセルファイルの中に散布図で作成されたグラフシートがありますが、これを1つに集約して表示させたいです。
画像3と画像5が散布図になりますが、これをVBAで1つに集約可能でしょうか。
完成したのが、画像6になります。
集約した際に、1つ目のファイルは、赤で表現し、2つ目のファイルは、青で表現させたいです。
■分からないこと
対象のエクセルファイルを読み込んだ後、どうやってグラフを集約させるか分からないです。
■前提
対象のエクセルファイルを読み込んだプログラムは作成したのですが続きが難しい状態です。
画像が以下になります。
画像1
この画像は、実行画面です。
③の「錘のグラフ集約」ボタンを押すと、①と②の散布図のグラフが集約。
結果画面は、この実行ファイルの別シートでお願いします。
画像2
画像1で選択した「1.錘の散布図ファイル」の[記入]シートです。
画像4
画像1で選択した「2.錘の散布図ファイル」の[記入]シートです。
コードが以下になります。
VBA
1Private Sub File_Select_Button1_Click() 2'------------------------------------------------------------------------------- 3' File_Select_Button1 4' 説明 5' 1.錘の散布図ファイル選択 クリック時 6'------------------------------------------------------------------------------- 7 Dim FType As String 'ファイルの種類 8 Dim Prompt As String 'ダイアログのタイトル 9 Dim Target As String '任意読み込むパス 10 Dim FPath As Variant 'ファイル参照パス 11 Dim Pos As Long '参照先のセル 12 Dim WS As Worksheet '対象シート名 13 14 Set WS = Worksheets("グラフデータ読み込み") 15 16 '----- 選択できるファイルの種類を".xls"に限定 17 FType = "Excelブック,*.xls" 18 19 '----- ダイアログのタイトルを指定 20 Prompt = "錘の散布図ファイルを選択して下さい" 21 22 '----- ファイル参照ダイアログの表示 23 FPath = Application.GetOpenFilename(FType, , Prompt) 24 25 26 '----- ダイアログでキャンセルボタンが押された場合は処理を終了 27 If FPath = False Then 28 End 29 End If 30 31 '----- H6セルにファイル名をセット 32 WS.Cells(6, 8).Value = FPath 33 Pos = InStrRev(Cells(6, 8).Value, "\") 34 35End Sub 36 37Private Sub File_Select_Button2_Click() 38'------------------------------------------------------------------------------- 39' File_Select_Button2 40' 説明 41' 2.錘の散布図ファイル選択 クリック時 42'------------------------------------------------------------------------------- 43 Dim Ftype_2 As String 'ファイルの種類 44 Dim Prompt_2 As String 'ダイアログのタイトル 45 Dim Target_2 As String '任意読み込むパス 46 Dim FPath_2 As Variant 'ファイル参照パス 47 Dim Pos_2 As String '参照先のセル 48 Dim WS_2 As Worksheet '対象シート名 49 50 Set WS_2 = Worksheets("グラフデータ読み込み") 51 52 '----- 選択できるファイルの種類を".xls"に限定 53 Ftype_2 = "Excelブック,*.xls" 54 55 '----- ダイアログのタイトルを指定 56 Prompt_2 = "錘の散布図ファイルを選択して下さい" 57 58 '----- ファイル参照ダイアログの表示 59 FPath_2 = Application.GetOpenFilename(Ftype_2, , Prompt_2) 60 61 '----- ダイアログでキャンセルボタンが押された場合は処理を終了 62 If FPath_2 = False Then 63 End 64 End If 65 66 '----- H16セルにファイル名をセット 67 WS_2.Cells(11, 8).Value = FPath_2 68 Pos_2 = InStrRev(Cells(11, 8).Value, "\") 69 70End Sub 71 72Private Sub GraphAggregationButton_Click() 73'------------------------------------------------------------------------------- 74' GraphAggregationButton 75' 説明 76' 錘のグラフ集約 クリック時 77'------------------------------------------------------------------------------- 78 Dim wbk1 As Workbook '錘の散布図ファイル 読み込み1 79 Dim wbk2 As Workbook '錘の散布図ファイル 読み込み2 80 Dim wshCmp As Worksheet '錘のグラフ集約:[グラフデータ読み込み]シート 81 82 Set wshCmp = Worksheets("グラフデータ読み込み") 83 84 Set wbk1 = Workbooks.Open(wshCmp.Range("H6").Value, ReadOnly:=True) 85 Set wbk2 = Workbooks.Open(wshCmp.Range("H11").Value, ReadOnly:=True) 86 87 88End Sub
GraphAggregationButton_Click()から集約化を書いてますが、どうやって記述したらよいか分からない状態です。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/12/10 12:39
2020/12/11 03:15