# 求教:Excel不同活頁簿是否能同時連動所有資料及版面?
> [color=#40f1ef][name=LHB阿好伯, Jan 26, 2019 ][:earth_africa:](https://www.facebook.com/LHB0222/)
###### tags: `Excel`
[TOC]
# :question: 問題紀錄
想把某個活頁簿的全部資料
同步在另一個活頁簿裏面
但各式版面要一模一樣
當更改A活頁簿,B活頁簿就會同步更新
# 初步構想解決方案
在excel上的格式操作都可以紀錄成程式碼
利用 vba 檔案路徑可以用一段程式碼取得想要改變的檔案路徑
在利用簡單迴圈將上面錄製的各式操作進行迴圈處理
## 程式碼
```VBA=
Sub 選取檔案()
Dim fDialog As FileDialog
Set fDialog = Application.FileDialog(msoFileDialogFilePicker)
' 允許選擇多檔案
fDialog.AllowMultiSelect = True
' 視窗標題
fDialog.Title = "請選擇 Excel 檔案"
' 初始目錄
fDialog.InitialFileName = "C:\"
' 設定檔案類型
fDialog.Filters.Clear
fDialog.Filters.Add "Excel 檔案", "*.xlsx"
fDialog.Filters.Add "所有檔案", "*.*"
If fDialog.Show = -1 Then
' 逐一處理每個檔案
For Each file In fDialog.SelectedItems
Cells.Select '儲存格全選
Selection.Copy '複製格式
Workbooks.Open Filename:=file '開啟檔案
Cells.Select
Selection.PasteSpecial '貼上格式
Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Range("A1").Select
ActiveWorkbook.Save
ActiveWindow.Close
Range("A1").Select
Next file
End If
End Sub
```
# 使用步驟
開啟開發人員選項
首先到檔案中最下面的選項
![](https://i.imgur.com/IKIO4tv.png)
選擇自訂功能區 -> 開發人員
![](https://i.imgur.com/mKWx84z.png)
選擇開發人員中的VBA編輯器
![](https://i.imgur.com/ekzWQtC.png)
新增一個模組
![](https://i.imgur.com/2FG9us9.png)
貼上程式碼執行
選擇要變更的檔案
![](https://i.imgur.com/ItUZGQR.png)
後續若是還要變更可以點選巨集中的執行
![](https://i.imgur.com/ckmyqjA.png)
或是新增一個快捷鍵使用
![](https://i.imgur.com/fBsOjeh.png)
最後存檔時請選擇XXX.xlsm檔案格式
![](https://i.imgur.com/NEvbOLp.png)
[:paperclip: 檔案下載](https://1drv.ms/x/s!AuqcoLPA0_SIi-hCfuHO8HPWcMmdvw?e=tq7G4V)
# 參考資料
>[![](https://i.imgur.com/whxC2kM.png)
Excel VBA 職場即用255招:不會寫程式也能看懂的VBA無痛指導](https://www.books.com.tw/exep/assp.php/gtgrthrst4577/products/0010737381?utm_source=gtgrthrst4577&utm_medium=ap-books&utm_content=recommend&utm_campaign=ap-202004)
>https://officeguide.cc/excel-vba-file-folder-selection-dialog-tutorial/
全文分享至
https://www.facebook.com/LHB0222/
有疑問想討論的都歡迎於下方留言
喜歡的幫我分享給所有的朋友 \o/
有所錯誤歡迎指教
![](https://i.imgur.com/47HlvGH.png)
<style>
html, body, .ui-content {
background-color: #333;
color: #ddd;
}
body > .ui-infobar {
display: none;
}
.ui-view-area > .ui-infobar {
display: block;
}
.markdown-body h1,
.markdown-body h2,
.markdown-body h3,
.markdown-body h4,
.markdown-body h5,
.markdown-body h6 {
color: #ddd;
}
.markdown-body h1,
.markdown-body h2 {
border-bottom-color: #ffffff69;
}
.markdown-body h1 .octicon-link,
.markdown-body h2 .octicon-link,
.markdown-body h3 .octicon-link,
.markdown-body h4 .octicon-link,
.markdown-body h5 .octicon-link,
.markdown-body h6 .octicon-link {
color: #fff;
}
.markdown-body img {
background-color: transparent;
}
.ui-toc-dropdown .nav>.active:focus>a, .ui-toc-dropdown .nav>.active:hover>a, .ui-toc-dropdown .nav>.active>a {
color: white;
border-left: 2px solid white;
}
.expand-toggle:hover,
.expand-toggle:focus,
.back-to-top:hover,
.back-to-top:focus,
.go-to-bottom:hover,
.go-to-bottom:focus {
color: white;
}
.ui-toc-dropdown {
background-color: #333;
}
.ui-toc-label.btn {
background-color: #191919;
color: white;
}
.ui-toc-dropdown .nav>li>a:focus,
.ui-toc-dropdown .nav>li>a:hover {
color: white;
border-left: 1px solid white;
}
.markdown-body blockquote {
color: #bcbcbc;
}
.markdown-body table tr {
background-color: #5f5f5f;
}
.markdown-body table tr:nth-child(2n) {
background-color: #4f4f4f;
}
.markdown-body code,
.markdown-body tt {
color: #eee;
background-color: rgba(230, 230, 230, 0.36);
}
a,
.open-files-container li.selected a {
color: #5EB7E0;
}
</style>