我雖然能寫(xiě)幾行VBA代碼,但是整體上還是一個(gè)小白。我發(fā)的一些辦公小技巧,之所以分享是因?yàn)楸容^實(shí)用,既然實(shí)用就不追求完美。分享的過(guò)程其實(shí)是不斷自學(xué)的過(guò)程,如果能給別人帶來(lái)幫助更好。我也盡量選擇網(wǎng)絡(luò)上不是太容易查到的方法。

把文件放到word_把文件放在word里_在word里怎么把另一個(gè)文件插到里面

向Word文檔批量插入圖片的方法有好多種, Word郵件合并是比較常見(jiàn)的方法。不過(guò)這并不是本文介紹的方法。介紹郵件合并的網(wǎng)絡(luò)資源很多,大家可以自行檢索。

假設(shè)有一組Word格式文本,需要填寫(xiě)不同的內(nèi)容,包括插入不同的圖片,批量生成新的文檔,例如與簽訂合同、制作檔案、填寫(xiě)審批表等等, Word郵件合并功能是一個(gè)非常驚艷的工具。

但是利用郵件合并功能插入圖片。不僅程序比較復(fù)雜,而且能不能夠達(dá)到預(yù)期的效果,仿佛要看Word軟件的心情,有時(shí)候很順利,有時(shí)候它怎么都不聽(tīng)話,要么不能成功插入圖片,要么插入圖片的格式不理想。

我搜索了很多解決方案,但是都不能根本解決問(wèn)題,后來(lái)干脆另辟蹊徑,就是今天介紹的VBA方法。我們示例的工作場(chǎng)景是為東漢集團(tuán)每位優(yōu)秀員工小檔案貼上照片,如下圖所示。

把文件放在word里_在word里怎么把另一個(gè)文件插到里面_把文件放到word

第1步,準(zhǔn)備工作。把需要貼照片的東漢集團(tuán)優(yōu)秀員工小檔案( Word文檔),全部放在同一個(gè)文件夾里(文件夾A),把需要用到的照片也全部放在同一個(gè)文件夾里(文件夾B), Word文檔和照片都用東漢集團(tuán)優(yōu)秀員工的姓名命名。

把文件放到word_在word里怎么把另一個(gè)文件插到里面_把文件放在word里

文件夾A和文件夾B既可以是同一個(gè)文件夾,也可以是在電腦不同位置的不同文件夾。 Word文檔和照片只要是相同的文件名就行,不一定要用姓名命名。

第2步,在文件夾A新建一個(gè)空白Word文檔并打開(kāi)。此處注意,該新建文檔必須與等待插入圖片的Word文檔在同一個(gè)文件夾(否則其所在文件夾如果碰巧文件名與圖片文件名相同,把不需要插入圖片的Word文檔批量修改了,改回去是極其麻煩的)。

第3步,復(fù)制粘貼小代碼。按“Alt+F11”(有的鍵盤(pán)可能還要同時(shí)按下“Fn”鍵),打開(kāi)VBA編輯器,雙擊左側(cè)1、2、3、4任意一處。

把文件放在word里_在word里怎么把另一個(gè)文件插到里面_把文件放到word

將小代碼粘貼在圖中右側(cè)位置。

在word里怎么把另一個(gè)文件插到里面_把文件放在word里_把文件放到word

第5步,運(yùn)行宏、完成任務(wù)。按“F5”(有的鍵盤(pán)可能要同時(shí)按“Fn”鍵,或者點(diǎn)擊功能區(qū)的“運(yùn)行”——“運(yùn)行子過(guò)程/用戶窗體”,或者點(diǎn)擊圖中綠色小三角形。

把文件放到word_在word里怎么把另一個(gè)文件插到里面_把文件放在word里

宏運(yùn)行后,根據(jù)提示,選中照片所在的文件夾,點(diǎn)擊“確定”。

如果指定插入圖片的位置不存在(例如表格只有三行,你指定它在第4行插入圖片),宏會(huì)在提示錯(cuò)誤后自動(dòng)退出運(yùn)行。

把文件放到word_把文件放在word里_在word里怎么把另一個(gè)文件插到里面

批量插入圖片完成后,宏會(huì)在剛才打開(kāi)的新建文檔中自動(dòng)提示為多少份Word文檔插入了圖片,如果沒(méi)有對(duì)應(yīng)的圖片(例如本例沒(méi)有黃忠的照片),宏會(huì)提示成功為多少份 Word文檔插入了圖片,哪些文檔沒(méi)有找到對(duì)應(yīng)的圖片未能完成插入。

把文件放到word_在word里怎么把另一個(gè)文件插到里面_把文件放在word里

參照本公號(hào)往期文章“一分鐘合并當(dāng)前文件夾下所有word文檔”介紹的方法,在模板文檔中植入宏并創(chuàng)建按鈕,也可以一鍵進(jìn)入上述流程,使用會(huì)更加方便。用戶可以根據(jù)這個(gè)宏的使用頻率自行決定是否將該宏保存到模板文檔并創(chuàng)建按鈕。

瀏覽“一分鐘合并當(dāng)前文件夾下所有word文檔”等往期文章,請(qǐng)回到本文頂部點(diǎn)擊話題“辦公小知識(shí)”。

特別提示:文件夾內(nèi)如有保護(hù)、隱藏文件將出錯(cuò)。

代碼中用綠色字體標(biāo)出的地方,是需要根據(jù)實(shí)際情況靈活修改的。在本例中,是在表1的第1行、第7個(gè)單元格插入圖片,所以相應(yīng)的代碼是(1)、Cell(1,7)。而在設(shè)置圖片格式時(shí),我們插入的圖片在Word文檔中是第1個(gè)圖片,所以代碼是(1)。調(diào)整圖片的、值,可使其顯示為我們需要的大小。

文章預(yù)告:一種將Word文檔批量轉(zhuǎn)換為PDF的方法

附件:vba代碼如下

'注意事項(xiàng),圖片文件要為jpg格式,且與Word文檔名稱(chēng)相同。

Sub Word表格插入圖片()

Dim $, $, $, WdN$, $

Dim Wd As

Dim Num1&, Num2&

Dim BOX$

Dim $

Dim As

On Next

= .Path

= Dir( & "\" & "*.doc")

Num1 = 0

Num2 = 0

"請(qǐng)選擇圖片所在的文件夾。"

With .()

. = "文件夾選擇"

If .Show Then

= .(1)

End If

End With

Do ""

If .Name Then

Err.

Set Wd = .Open( & "\" & )

= .Name

= & "\" & (.Name, ".")(0) & ".jpg"

With .(1).Cell(1, 7). '在指定表格的指定單元格中插入圖片

If Err. > 0 Then

& "指定的插入位置不存在,請(qǐng)檢查。"

Err.

Exit Sub

End If

.

.Text = ""

.. :=, :=, :=True

.. =

End With

With .(1) '設(shè)置圖片尺寸

. = 130

. = 102

... = er

End With

If Err. > 0 Then

Num1 = Num1 + 1

WdN = WdN & Chr(13) & Wd.Name

Else

Num2 = Num2 + 1

End If

Err.

Wd. True

End If

= Dir

Loop

..

.(1)..

If Num1 = 0 Then

. Text:="您好,圖片插入已完成" & Chr(13) & Chr(13) & "共為" & Num2 & "個(gè)文件插入圖片。"

Else

. Text:="您好,圖片插入已完成" & Chr(13) & Chr(13) & "共為" & Num2 & "個(gè)文件插入圖片。" & Chr(13) & "但如下" & Num1 & "個(gè)文件對(duì)應(yīng)圖片未找到:" & Chr(13) & WdN

End If

With .

. = 0

. = (0)

. = er

. =

. = 29.45

End With

With ..Font '設(shè)置文檔的字符格式

.Name = " 方正仿宋_GBK"

.Size = 16

. = ""

. = ""

End With

With .(1).

.Font.Size = 22

.Font.Name = " 方正小標(biāo)宋_GBK"

End With

End Sub