{"text_format":"1","workbook":"xlsx","n_sheets":2,"sheets":["管理者用","集計一覧"],"not_rendered":{"charts":0,"images":4,"macros":1,"external_links":0,"defined_names":0,"comments":0,"pivot_tables":0},"unopened":[],"bounds":{"document_bytes":16777216,"sheet_cells":100000,"rows_first":2000,"rows_last":500,"rows_between":2000,"halvings":0,"cell_chars":16384,"cell_head_chars":4096},"cells_cut":0,"cells_raw":0,"read":"whole","date_system":"1900"}

{"sheet":"管理者用","index":0,"n_rows":22,"n_cols":24,"rows_kept":22,"cut":false,"hidden":false,"merged":[]}
[]
[]
[]
[]
[]
[]
[]
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"【アンケート取込みマクロの仕様】",null,null,null,null,null,"【アンケート削除マクロの仕様】"]
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,"項番","マクロ処理","説明","実際のコード",null,null,"項番","マクロ処理","説明","実際のコード"]
[null,"【アンケート取込み手順】",null,null,null,null,null,null,null,null,null,null,null,null,1,"フォルダ選択","データを取り込むフォルダを選択するダイアログが表示されます。アンケートデータが含まれるフォルダを選択してください。","Set fd = Application.FileDialog(msoFileDialogFolderPicker)\nfd.Title = \"データを取り込むフォルダを選択してください\"\nIf fd.Show <> -1 Then Exit Sub\nFolderPath = fd.SelectedItems(1)\nIf Right(FolderPath, 1) <> \"\\\" Then FolderPath = FolderPath & \"\\\"",null,null,1,"「集計一覧」シートの取得","「集計一覧」シートを取得し、存在しない場合はエラーメッセージを表示して処理を中断します。","On Error Resume Next\nSet targetSheet = ThisWorkbook.Sheets(\"集計一覧\")\nOn Error GoTo 0\n\nIf targetSheet Is Nothing Then\n    MsgBox \"「集計一覧」シートが見つかりません。\", vbExclamation\n    Exit Sub\nEnd If"]
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,2,"集計一覧シートの初期設定","取り込み先のシートを「集計一覧」に設定し、データの開始行を4行目に指定します。","Set TargetWorkbook = ThisWorkbook\nSet targetSheet = TargetWorkbook.Sheets(\"集計一覧\")\nTargetRow = 4\nSheetIndex = 0",null,null,2,"削除の確認メッセージ","アンケート削除の確認メッセージを表示し、「はい」を選択した場合のみ削除を実行します。","response = MsgBox(\"アンケートを削除しますか？\", vbYesNo + vbQuestion, \"確認\")\nIf response <> vbYes Then\n    MsgBox \"処理をキャンセルしました。\", vbInformation\n    Exit Sub\nEnd If"]
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,3,"フォルダ内のExcelファイルを順番に処理","指定したフォルダ内にある全てのExcelファイルを開きます。","FileName = Dir(FolderPath & \"*.xlsx\")\nDo While FileName <> \"\"\n    Set SourceWorkbook = Workbooks.Open(FolderPath & FileName)",null,null,3,"画面更新の停止","画面のちらつきを防ぐため、ScreenUpdating を False に設定し、不要なアラートを非表示にします。","Application.ScreenUpdating = False\nApplication.DisplayAlerts = False"]
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,4,"「回答」シートのデータを取得","「回答」シートが存在する場合、A3:BB3 のデータを取得し、「集計一覧」シートの次の行にコピーします。","If Not SourceWorkbook.Sheets(\"回答\") Is Nothing Then\n    With SourceWorkbook.Sheets(\"回答\")\n        DataToCopy = .Range(\"A3:BB3\").Value\n        targetSheet.Rows(TargetRow).Resize(1, UBound(DataToCopy, 2)).Value = DataToCopy\n        targetSheet.Rows(TargetRow).RowHeight = 60\n        TargetRow = TargetRow + 1\n    End With\nEnd If",null,null,4,"集計一覧のテーブル解除","「集計一覧」シートの既存のテーブルを解除し、通常のセル範囲に戻します。","On Error Resume Next\nFor Each tbl In targetSheet.ListObjects\n    tbl.Unlist\nNext tbl\nOn Error GoTo 0"]
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,5,"「アンケート」シートの処理","「アンケート」シートが存在する場合、E86セルの値を新しいシート名として、そのシートをコピーし追加します。","If Not SourceWorkbook.Sheets(\"アンケート\") Is Nothing Then\n    With SourceWorkbook.Sheets(\"アンケート\")\n        NewSheetName = Trim(.Range(\"E86\").Value)\n        .Copy After:=TargetWorkbook.Sheets(TargetWorkbook.Sheets.Count)\n        CleanSheetName = Trim(NewSheetName)\n        TargetWorkbook.Sheets(TargetWorkbook.Sheets.Count).Name = CleanSheetName\n    End With\nEnd If",null,null,5,"「集計一覧」シートのデータ削除","「集計一覧」シートの4行目以降のデータを削除し、空の状態にします。","lastRow = targetSheet.Cells(targetSheet.Rows.Count, 1).End(xlUp).Row\nIf lastRow >= 4 Then\n    targetSheet.Rows(\"4:\" & lastRow).Delete\nEnd If"]
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,6,"シートの視認性向上","新しく追加したシートに、シート名を表示し、A2セルに「集計一覧」へのリンクを作成します。","With TargetWorkbook.Sheets(CleanSheetName)\n    .Range(\"A1\").Value = CleanSheetName\n    .Range(\"A1\").Font.Bold = True\n    .Range(\"A1\").Font.Color = RGB(255, 0, 0)\n    .Hyperlinks.Add Anchor:=.Range(\"A2\"), Address:=\"\", SubAddress:=\"'集計一覧'!A1\", TextToDisplay:=\"集計一覧へ\"\nEnd With",null,null,6,"不要なシートの削除","「集計一覧」と「管理者用」シート以外のすべてのシートを削除します。","For Each ws In ThisWorkbook.Worksheets\n    If ws.Name <> \"集計一覧\" And ws.Name <> \"管理者用\" Then\n        ws.Delete\n    End If\nNext ws"]
[null,null,"下まで伸ばすーーーーーーーーーーーー",null,null,null,null,null,null,null,null,null,null,null,7,"ボタン追加","「メールのひな型を表示」ボタンを追加し、クリックするとメールのテンプレートを表示するマクロを実行します。","Set btn = .Shapes.AddFormControl(xlButtonControl, _\n                                     Left:=.Range(\"AD100\").Left, _\n                                     Top:=.Range(\"AD100\").Top, _\n                                     Width:=200, Height:=40)\nbtn.Name = \"ShowTemplateButton_\" & SheetIndex\nbtn.TextFrame.Characters.Text = \"メールのひな型を表示\"\nbtn.OnAction = \"ShowTemplate\"",null,null,7,"画面更新の再開","処理終了後、ScreenUpdating と DisplayAlerts を元の状態に戻します。","Application.DisplayAlerts = True\nApplication.ScreenUpdating = True"]
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,8,"シートのタブ色設定","タブの色を交互に白と薄い黄色に設定し、視認性を向上させます。","If SheetIndex Mod 2 = 1 Then\n    .Tab.Color = RGB(255, 255, 255) ' 白\nElse\n    .Tab.Color = RGB(255, 255, 224) ' 薄い黄色\nEnd If",null,null,8,"削除完了メッセージ","処理が完了したことを知らせるメッセージを表示します。","MsgBox \"アンケートデータの削除が完了しました。\", vbInformation"]
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,9,"集計一覧のテーブル化","取り込んだデータ範囲を「アンケート集計テーブル」という名前でテーブル化し、デザインを適用します。","lastRow = targetSheet.Cells(targetSheet.Rows.Count, 1).End(xlUp).Row\nSet tblRange = targetSheet.Range(\"A3:BB\" & lastRow)\nSet tbl = targetSheet.ListObjects.Add(xlSrcRange, tblRange, , xlYes)\ntbl.Name = \"アンケート集計テーブル\"\ntbl.TableStyle = \"TableStyleLight9\"\ntblRange.Borders.LineStyle = xlContinuous"]
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,10,"不要な「0」を空白に変換","回答データの中で「0」（未回答など）を空白にし、視認性を向上させます。","For Each cell In targetSheet.Range(\"A4:BB\" & lastRow)\n    If cell.Value = 0 Then cell.Value = \"\"\nNext cell"]
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,11,"B列を太字に設定","回答者の情報が含まれるB列のデータを太字にし、見やすくします。","targetSheet.Range(\"B4:B\" & lastRow).Font.Bold = True"]
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,12,"処理完了メッセージ","すべてのデータ取り込みが完了すると、「取り込み完了」のメッセージが表示されます。","MsgBox \"取り込み完了\", vbInformation"]
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,13,"メールテンプレートの表示","「メールのひな型を表示」ボタンをクリックすると、メールの雛形が画面上に表示されます。","Sub ShowTemplate()\nDim ws As Worksheet\nSet ws = ActiveSheet\nDim templateText As String\ntemplateText = \"宛先:\" & vbCrLf & ws.Range(\"M108\").Value & vbCrLf\nws.Shapes(\"InfoTextBox\").TextFrame.Characters.Text = templateText\nMsgBox \"メールのひな型が表示されました！\", vbInformation\nEnd Sub"]

{"sheet":"集計一覧","index":1,"n_rows":3,"n_cols":54,"rows_kept":3,"cut":false,"hidden":false,"merged":[[0,14,0,17]]}
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"産業界へ提供できること・もの"]
["所属・連絡先等",null,null,null,null,null,null,null,null,null,null,null,"産学連携の目的",null,null,null,null,null,null,"講師派遣",null,null,null,null,null,"社会人向け講座",null,null,null,null,null,"学生による共同研究・産学連携プロジェクト",null,null,null,null,null,"連携のための人員",null,null,null,null,null,"インターンシップ募集",null,null,null,null,null,"産業界への期待やこれまでの産学連携実績"]
["所属","学校名\n※個別シートへのリンクになっています","教育内容①","教育内容②","教育内容③","所在都道府県","部署名","役職","担当者名","電話番号","Eメールアドレス","HPアドレス","デジタル推進人材の育成／活用","新規事業創出","社会課題解決／地域貢献","採用を含むネットワーキング","その他（１）","その他（２）","その他（３）","講師派遣","具体的な内容","背景","時期","規模","参考情報※URL等","社会人向け講座","具体的な内容2","背景2","時期2","規模2","参考情報※URL等2","学生による共同研究・産学連携プロジェクト","具体的な内容3","背景3","時期3","規模3","参考情報※URL等3","連携のための人員","具体的な内容4","背景4","時期4","規模4","参考情報※URL等4","インターンシップ募集","具体的な内容5","背景5","時期5","規模5","参考情報※URL等5","産業界へ期待すること","これまでの産学連携実績①","これまでの産学連携実績②","これまでの産学連携実績③","その他（特記事項）"]