掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
Word2000からWord2007への対応 (ID:102062)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
◆環境 VB6.0 MicrosoftXP Word2000でWord出力していたのですが、Word2007に対応することになり、Word2000対応時点のソースを実行すると、今まで一行で表示されていた データが、途中で改行されてしまい、困っています。 出力するデータは、リストボックスに表示されているデータです。 Wordファイルは、リストボックスに表示されているデータを60行3列で 出力しています。 参照設定で、MicrosoftWord12.0 ObjectLibrary に変更しました。 ---------------------- ◆処理 Public m_WordApp As Word.Application Public m_WordDoc As Word.Document を宣言し、 60行1列のセルを作成し、 m_WordDoc.Tables.Add m_WordApp.Selection.Range, NumRows:=60, NumColumns:=1 With m_WordDoc.Tables(No) .Borders.OutsideLineStyle = wdLineStyleNone 'これでCELLの線が消える .Borders.InsideLineStyle = wdLineStyleNone 'これでCELLの線が消える .Range.Paragraphs.Alignment = wdAlignParagraphJustifyHi '真ん中にそろう End With With m_WordDoc.Tables(No).Range.ParagraphFormat ' .LeftIndent = MillimetersToPoints(0) ' .RightIndent = MillimetersToPoints(0) .LeftIndent = 0 .RightIndent = 0 .SpaceBefore = 0 .SpaceBeforeAuto = False .SpaceAfter = 0 .SpaceAfterAuto = False .LineSpacingRule = wdLineSpaceExactly .LineSpacing = 12 .Alignment = wdAlignParagraphJustify .WidowControl = False .KeepWithNext = False .KeepTogether = False .PageBreakBefore = False .NoLineNumber = False .Hyphenation = True ' .FirstLineIndent = MillimetersToPoints(0) .FirstLineIndent = 0 .OutlineLevel = wdOutlineLevelBodyText .CharacterUnitLeftIndent = 0 .CharacterUnitRightIndent = 0 .CharacterUnitFirstLineIndent = 0 .LineUnitBefore = 0 .LineUnitAfter = 0 .AutoAdjustRightIndent = True .DisableLineHeightGrid = False .FarEastLineBreakControl = True .WordWrap = True .HangingPunctuation = True .HalfWidthPunctuationOnTopOfLine = False .AddSpaceBetweenFarEastAndAlpha = True .AddSpaceBetweenFarEastAndDigit = True .BaseLineAlignment = wdBaselineAlignAuto End With 下記処理で With m_WordDoc.Tables(TblNo) .Cell(Row, 1).Range.InsertAfter Text End With 書き込んでいます。 ※Text as String 1ページにつき、60行出力させるために、セルを60行分作成し その中にデータを入れることで実現しています。 #本当は行間を狭める方法がわかればよかったのですが、わからなかったため苦肉の策です。 Textには、vbTabが含まれていますが、それが改行として認識されているようにみえますが、そのようなことはあるのでしょうか? 現状、 Text = "A"+vbTab+"B"+vbTab+C というデータの場合、Word出力をすると A B C とセル内に出力されます。 教えてください。 よろしくお願いいたします。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.