- PR -

Microsoft Word自動化について

投稿者投稿内容
背古井
常連さん
会議室デビュー日: 2004/04/02
投稿数: 39
投稿日時: 2004-07-28 10:24
お世話になっております 背古井です

きくちゃんさん

引用:
--------------------------------------------------------------------------------

>何がどのようにダメだったのか、こちらとしては非常に気になってしまいます。
よかったら、このあたりについて教えて頂けませんか?
--------------------------------------------------------------------------------

あああおっしゃる通りだめだけじゃわかりませんよねすいません。

まずきくちゃんさんに考えていただいた下記コード
コード:
--------------------------------------------------------------------------------


wordSHT.Tables.Item(1).Borders(WdBorderType.wdBorderLeft).LineStyle = WdLineStyle.wdLineStyleNone


--------------------------------------------------------------------------------

をそのままコピペしてみたんですが、

err-----------------------------------------------------------------------------

インターフェイス'Word.Borders'には規定のプロパティがないため、インデックス処理を実行できません

--------------------------------------------------------------------------------

と返されました。

そこで以下のようにいろんなパターンを試してみたんですが

--------------------------------------------------------------------------------

wordSHT.Tables.Item(1).Borders(word.WdBorderType.wdBorderLeft).LineStyle = word.WdLineStyle.wdLineStyleNone

wordSHT.Tables.Item(1).Borders.word.WdBorderType.wdBorderLeft.LineStyle = word.WdLineStyle.wdLineStyleNone

word.sheet.Tables.Item(1).Borders(WdBorderType.wdBorderLeft).LineStyle = WdLineStyle.wdLineStyleNone

等々


--------------------------------------------------------------------------------

全て「構造があってないよエラー」を返されてしまいました。
どうもwordの自動化プログラムはexcelのように素直に変換できないみたいです。

というところで時間がなくなってきてしまったため
前回記入の既存のWORDをブランクフォームとして開いて値をセットする方法にしたというわけです。(本当はこういうプログラムを分けるような方法好きじゃないんですけどね。)

ということできくちゃんさん重ね重ねありがとうございました。
失礼します。



きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2004-07-28 11:05
背古井さん、こんにちは。

引用:

インターフェイス'Word.Borders'には規定のプロパティがないため、インデックス処理を実行できません



という事は、

コード:
wordSHT.Tables.Item(1).Borders.Item(WdBorderType.wdBorderLeft).LineStyle = _
WdLineStyle.wdLineStyleNone


と書き換えればOKなんじゃないでしょうか?
その辺りはオブジェクトブラウザとかで確認してみて下さい。
背古井
常連さん
会議室デビュー日: 2004/04/02
投稿数: 39
投稿日時: 2004-07-28 12:58
きくちゃんさん

ありがとうございました!!
コード:
--------------------------------------------------------------------------------

wordSHT.Tables.Item(1).Borders.Item(Word.WdBorderType.wdBorderLeft).LineStyle = _
Word.WdLineStyle.wdLineStyleNone


--------------------------------------------------------------------------------

で左側だけ引くことができました!!

大変勉強になり、かつたすかりました。早速システムに組み込むことにします。
みなさん本当にありがとうございました。

スキルアップ/キャリアアップ(JOB@IT)