re: VB程序操作word表格(文字、圖片) 黑旋風(fēng) 2006-10-22 00:53
你的代碼基本上都差不多了,我沒測(cè)試,看樣子是你的思路有點(diǎn)問題(循環(huán)不對(duì))
你可以先生成1個(gè)表格,再處理表格的數(shù)據(jù)。
也可以把所有表格全部生成,再處理表格數(shù)據(jù),
看你的代碼,你選擇的是第2種,不管是哪種,肯定是多重循環(huán)的,你的代碼只有1重循環(huán)。
思路如下:
for 表格數(shù)
生成這個(gè)表格,得到表格對(duì)象
for 表格的行
for 表格行的單元格
單元格="單元格的內(nèi)容"
next
next
next
呵呵,不知道說(shuō)清楚沒有
re: 表格列寬鼠標(biāo)拖動(dòng) 黑旋風(fēng) 2006-09-18 09:35
@陳朋奕.
哦?你認(rèn)識(shí)我嗎?叫黑旋風(fēng)的人不少哦!不知我傍了哪個(gè)大俠的威名....(偷笑ing....)
re: VB程序操作word表格(文字、圖片) 黑旋風(fēng) 2006-08-29 16:00
順便提一下,像你這樣的程序,我個(gè)人覺得是否改成模板要方便些呢?你用word做一個(gè)模板,把表格什么的全都先寫好,然后保存成模板文件。然后你再用程序加載這個(gè)模板,然后往模板里填寫數(shù)據(jù)。這樣難度要低一些。不過(guò)具體情況具體分析。(個(gè)人意見)
之前我不是說(shuō)了如果是自己創(chuàng)建的表格可以很方便的得到表格對(duì)象嗎?就在創(chuàng)建時(shí)直接取得了。其實(shí)還有另外一種辦法就是:你的其他程序都不變,只把出錯(cuò)的那句話改成:
wdApp.ActiveDocument.Tables(1).Cell(2, 3).Select
就像我開篇說(shuō)的,word、excel這些集合的下標(biāo)都是從1開始,然后只要找到表格那個(gè)集合,然后選取第一個(gè)表格就是要操作的表格了(因?yàn)槌绦蛑粍?chuàng)建了一個(gè)表格)。
如果是模板的話,就應(yīng)該是對(duì)已經(jīng)存在的表格進(jìn)行操作了,就只有用這中辦法弄了。不知道我說(shuō)清楚沒有。
re: VB程序操作word表格(文字、圖片) 黑旋風(fēng) 2006-08-29 15:44
不好意思啊,上次在自己機(jī)器上測(cè)試了一下,沒有拷全部代碼,不過(guò)就這個(gè)應(yīng)該也能理解到呀,table就是要操作的那個(gè)table,一個(gè)word里面有可能有多個(gè)table,我們首先要選中要操作的那個(gè)table,我們這個(gè)table是自己用代碼生成的,所以有一個(gè)方便的代碼就是
dim Table
set Table = wdApp.ActiveDocument.Tables.Add(wdApp.Application.Selection.Range, NumRows:=27, NumColumns _
:=7, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
wdAutoFitFixed)
修改你的程序里面插入table的那句話即可
---------------------------------------------
謝謝關(guān)注風(fēng)之谷,下次多寫一些關(guān)于這方面的東西,網(wǎng)上這方面的其實(shí)東西不少,但是不全,下次整理一下發(fā)上來(lái),不過(guò)最近怕是沒什么時(shí)間了,呵呵!
re: VB程序操作word表格(文字、圖片) 黑旋風(fēng) 2006-08-26 11:26
接著上次那個(gè)程序來(lái)。。。
Set mySelection = wdApp.Documents.Application.Selection
mySelection.Cells.Borders(-7).LineStyle = 1
'選中表格的第2行第3列
table.Cell(2, 3).Select
'向下移動(dòng)6格,第1個(gè)參數(shù)和第3個(gè)是常數(shù)
Call wdBook.Application.Selection.MoveDown(5, 6, 1)
'合并
wdBook.Application.Selection.Cells.Merge
'拆分成7行2列
Call wdBook.Application.Selection.Cells.Split(7, 2, True)
re: VB程序操作word表格(文字、圖片) 黑旋風(fēng) 2006-08-23 13:44
看你的代碼是想增加一個(gè)表格,VBA的代碼和VB的代碼是不一樣的,需要轉(zhuǎn)換一下,多用幾次就清楚了。
應(yīng)該這樣寫
Call wdBook.Tables.Add(wdBook.application.Selection.Range, 16, 5, 1, 0)