1. 在word中自動插入圖片 vba代碼
Sub 批量插入圖片()
Dim myfile As FileDialog
Set myfile = Application.FileDialog(msoFileDialogFilePicker)
With myfile
.InitialFileName = "E:\工作文件" 『這里輸入你要插入圖片的目標文件夾
If .Show = -1 Then
For Each Fn In .SelectedItems
Selection.Text = Basename(Fn) '這兩句移到這里
Selection.EndKey
If Selection.Start = ActiveDocument.Content.End - 1 Then '如游標在文末
Selection.TypeParagraph '在文末添加一空段
Else
Selection.MoveDown
End If
Set MyPic = Selection.InlineShapes.AddPicture(FileName:=Fn, SaveWithDocument:=True) '按比例調整相片尺寸
WidthNum = MyPic.Width
c = 6 '在此處修改相片寬,單位厘米
MyPic.Width = c * 28.35
MyPic.Height = (c * 28.35 / WidthNum) * MyPic.Height
If Selection.Start = ActiveDocument.Content.End - 1 Then '如游標在文末
Selection.TypeParagraph '在文末添加一空段
Else
Selection.MoveDown
End If
Next Fn
Else
End If
End With
Set myfile = Nothing
End Sub
Function Basename(FullPath) '取得文件名
Dim x, y
Dim tmpstring
tmpstring = FullPath
x = Len(FullPath)
For y = x To 1 Step -1
If Mid(FullPath, y, 1) = "\" Or _
Mid(FullPath, y, 1) = ":" Or _
Mid(FullPath, y, 1) = "/" Then
tmpstring = Mid(FullPath, y + 1)
Exit For
End If
Next
Basename = Left(tmpstring, Len(tmpstring) - 4)
End Function
執行此代碼後,彈出的選擇對話框, 全選目標文件夾下的所有圖片文件之後,點擊確定。然後靜靜的等待電腦完成處理工作,次數word會進入無響應狀態。圖片越多,無響應的時間越長。
2. 尋找WORD VBA高手解決WORD批量插入圖片程序的問題
Selection.Text = Basename(Fn) '這兩句移到這里
Selection.EndKey
這兩句移一下位置,其它不變。
Sub 批量插入圖片()
Dim myfile As FileDialog
Set myfile = Application.FileDialog(msoFileDialogFilePicker)
With myfile
.InitialFileName = "D:\111"
If .Show = -1 Then
For Each Fn In .SelectedItems
Selection.Text = Basename(Fn) '這兩句移到這里
Selection.EndKey
Set mypic = Selection.InlineShapes.AddPicture(FileName:=Fn, SaveWithDocument:=True)
'按比例調整相片尺寸
WidthNum = mypic.Width
c = 18 '在此處修改相片寬,單位厘米
mypic.Width = c * 28.35
mypic.Height = (c * 28.35 / WidthNum) * mypic.Height
If Selection.Start = ActiveDocument.Content.End - 1 Then '如游標在文末
Selection.TypeParagraph '在文末添加一空段
Else
Selection.MoveDown
End If
If Selection.Start = ActiveDocument.Content.End - 1 Then '如游標在文末
Selection.TypeParagraph '在文末添加一空段
Else
Selection.MoveDown
End If
Next Fn
Else
End If
End With
Set myfile = Nothing
End Sub
Function Basename(FullPath) '取得文件名
Dim x, y
Dim tmpstring
tmpstring = FullPath
x = Len(FullPath)
For y = x To 1 Step -1
If Mid(FullPath, y, 1) = "\" Or _
Mid(FullPath, y, 1) = ":" Or _
Mid(FullPath, y, 1) = "/" Then
tmpstring = Mid(FullPath, y + 1)
Exit For
End If
Next
Basename = Left(tmpstring, Len(tmpstring) - 4)
End Function
3. 如何運用vba將指定圖片插入word中
例如,新建一個4行1列的表格,然後在Cell(3, 1)內插入圖片:
Sub Macro1()
Dim mysel
mysel = ActiveDocument.Tables(1).Cell(3, 1)
mysel.InlineShapes.AddPicture FileName:="C:\a.jpg", LinkToFile:=True, SaveWithDocument:=True
End Sub
4. 在word中想用vba實現依次新建文檔並插入指定文件夾中的圖片並命名保存在指定文件夾
以word2007為例,方法如下:
1、點擊圖片,另存為「篩選過的網頁」。
5. VBA編程問題:在word的特定文本前插入圖片
Word怎樣批量按順序插入圖片
6. 想在word頁面中,批量插入圖片,使得每頁有4張圖片均勻分布在頁面中,該怎麼做呢
這是統一設置word文檔中的圖片樣式,你的問題我不會,但是希望這個例子會對你有點提示。
使用宏:
一,在word中按alt+f11組合鍵,進入VBA模式
二,在左邊的工程資源管理器中找到你的word文檔,在其上右鍵/添加/模塊
三,把下面代碼復制,粘貼進去.
四,更改數值, 改一下寬度和高度數值(10),點運行(類似播放按鈕.)或f5,即可設置文檔中全部圖片
Sub Macro()
Mywidth=10'10為圖片寬度(厘米)
Myheigth=10'10為圖片高度(厘米)
For Each iShape In ActiveDocument.InlineShapes
iShape.Height = 28.345 * Myheigth
iShape.Width = 28.345 * Mywidth
Next iShape
End Sub
7. 用VBA轉PDF為圖片插入的word中
能,需要傳兩個參數,word路徑和pdf路徑。
代碼可以做成wsf文件,通過C語言或者java調用
<job id="wtop">
<reference guid="{00020905-0000-0000-C000-000000000046}" comment="MSWord 2000 tag library,under HKEY_CLASSES_ROOTTypeLib"/>
<script language="VBScript">
Option Explicit
Dim Home_file
Dim outdoc_file
'If WScript.Arguments.Count < 2 Then
' MsgBox "Usage: t1 <Home_file> <outdoc_file> "
' WScript.Quit
'End If
Home_file = WScript.Arguments(0)
outdoc_file = WScript.Arguments(1)
Dim WordApp
Set WordApp = CreateObject("Word.Application")
With WordApp
.Visible = False '設置word為可見
With .Options
.CheckSpellingAsYouType = False '不檢查拼寫
.CheckGrammarAsYouType = False '不檢查語法
End With
'打開模板文件
.Documents.Open(Home_file)
.Documents(1).Activate '激活文檔
Dim doc
Set doc = .ActiveDocument '得到這個使用中的文件
doc.ExportAsFixedFormat outdoc_file, 17, False, 0, 0, 1, 1, 0, True, True, 0, True, True, False
doc.Close False
With .Options
.CheckSpellingAsYouType = True
.CheckGrammarAsYouType = True
End With
.Quit
End With
</script>
</job>
8. 在word中如何用VBA實現插入多張圖片
要從兩個方面考慮:
1、如何把現有文檔中的圖片導出?這個代碼片斷可以參考一下:
Set ImageStream = CreateObject("ADODB.Stream")
With ImageStream
.Type = 1
.Open
.Write ActiveDocument.InlineShapes(1).Range.EnhMetaFileBits
.SaveToFile "d:\Temp\Output.bmp"
.Close
End With
Set ImageStream = Nothing
2、如何把已經到處的圖片導入到新文檔中?這個函數調用可以參考一下:
ActiveDocument.InlineShapes.AddPicture
如果還是不明白的話,請補充提問。
_____
補充:
請問樓主你運行那個代碼片斷得到的*完整*錯誤信息是什麼?報錯的時候,系統一般會把游標移動到出錯的那行代碼上,你看到的是哪一行代碼出錯呢?
我看你貼上來的代碼應該是沒有什麼語法上的錯誤,「Exit For」的確是不應該要的,但那也不是語法錯誤啊。
9. 利用VBA如何將批量圖片導入WORD的指定表格格式里
將excel表格中的數據批量插入到word中的操作方法:
1、單擊插入----對象按鈕;
2、彈出插入對話框對話框,選擇由文件創建對話框,單擊瀏覽按鈕;
3、彈出瀏覽對話框,選擇需要插入有Excel文件;
4、單擊插入按鈕即可。
註:
(1)若選中鏈接到文件,源文件修改,Word中的表格也隨之改變;
(2)若選中顯示為圖片,則以圖標的形式插入到Word,雙擊可以打開其源文件。