Word VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


16 / 45 ページ ←次へ | 前へ→

【609】Re:ご返答ありがとうございます
お礼  kuroda  - 09/2/27(金) 23:03 -

引用なし
パスワード
   詳しく指示していただき、ありがとうございます。
以下のようにして実行しますと、

Sub テキスト保存()
'
' テキスト保存 Macro
'
'
  ActiveDocument.SaveAs FileName:=ThisDocument.Path & "\" & Left(ThisDocument.Name, Len(ThisDocument.Name) - 4) & "txt", FileFormat:=wdFormatText, _
    LockComments:=False, Password:="", AddToRecentFiles:=True, WritePassword _
    :="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts:=False, _
    SaveNativePictureFormat:=False, SaveFormsData:=False, SaveAsAOCELetter:= _
    False, Encoding:=65001, InsertLineBreaks:=False, AllowSubstitutions:= _
    False, LineEnding:=wdCRLF
End Sub

上記でマクロを実行しますと、エラーは出ないのですが、今度はファイル名がNormal.txtに固定されてしまい、元のファイル名が生かされないのです。
構文が間違っているのでしょうか。
(txtの前の.は削除させていただきました。ついているとNormal..txtとなったので)
何回も申し訳ありませんが、教えていただけませんでしょうか?
よろしくお願いいたします。
・ツリー全体表示

【608】Re:ご返答ありがとうございます
発言  マクロマン  - 09/2/27(金) 10:15 -

引用なし
パスワード
   >FileName:="あいうえお.txt"

この部分が保存するときのパス及びドキュメント名になります。

この部分に変数で作成した名前を代入します。

FileName:= 変数

なお、コードで分からない部分があったら、VBEで選択してF1キーを押したら
関連するヘルプが表示されます。
・ツリー全体表示

【607】ご返答ありがとうございます
お礼  kuroda  - 09/2/26(木) 23:37 -

引用なし
パスワード
   ▼マクロマン さん:
お返答どうもありがとうございます。
丁寧なご指示をいただいたのですが、何せVBAの知識が乏しいため、最終的にどのような構文にしたらいいのか、判らないのです。
現在、マクロを記録したままだと、

Sub テキスト保存()
'
' テキスト保存 Macro
'
'
  ActiveDocument.SaveAs FileName:="あいうえお.txt", FileFormat:=wdFormatText, _
    LockComments:=False, Password:="", AddToRecentFiles:=True, WritePassword _
    :="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts:=False, _
    SaveNativePictureFormat:=False, SaveFormsData:=False, SaveAsAOCELetter:= _
    False, Encoding:=65001, InsertLineBreaks:=False, AllowSubstitutions:= _
    False, LineEnding:=wdCRLF
End Sub

となっているのですが、教えていただいた構文を何処へどのように挿入するのかがよく判らないのです。とりあえずやってみましたが、うまくいきませんでした。
もしよろしければ、最終的にどのような構文になるのかも、教えていただけませんでしょうか。
誠に勝手なお願いなのですが、よろしくお願います。
・ツリー全体表示

【606】Re:doc.ファイルをファイル名をそのままで...
発言  マクロマン  - 09/2/26(木) 13:57 -

引用なし
パスワード
   >win vistaでword 2007を使用している者です。

見落としてました。
当方Win XP SP2、Word2002で試しています。
手順や表示されるメッセージが違う可能性が大いにあります。
・ツリー全体表示

【605】Re:doc.ファイルをファイル名をそのままで...
発言  マクロマン  - 09/2/26(木) 13:46 -

引用なし
パスワード
   ドキュメントが格納されているフォルダの名前とドキュメント
の名前の取得方法です。

MsgBox ThisDocument.Path 'フォルダパス
MsgBox ThisDocument.Name 'ドキュメント

FileSystemObjectを使い、GetBaseNameで拡張子を除いた
ドキュメント名を取得する方法もあります。

ただ、今回はワードドキュメント限定ですので、
ThisDocument.Name
から拡張子部分を除いた左部分を取得、でもいけると思います。

MsgBox Left(ThisDocument.Name,Len(ThisDocument.Name)-4)

これに".txt"を付加すればテキストファイル名になります。
さらに
ThisDocument.Path
を前に付ければテキストファイルのパスになります。

ThisDocument.Path & "\" & Left(ThisDocument.Name,Len(ThisDocument.Name)-4) & ".txt"

テキスト形式で保存するのは、マクロの自動記録である程度のコードが得られます。
名前をつけて保存

ファイルの種類:書式なし(*.txt)
で"書式なし〜"の警告が出るので「はい」

「ファイルの変換」ウィンドウが出て、ここで「その他」を選択すると
Shift JISなどの形式を選択できます。
でも、ここには「UTF-8」は無いようです。

ですので、一度保存した後形式を変換するか、別の方法でテキストファイルを
作成する必要があるかもしれません。

この当りのshift JISとかUTF-8とかのことについては私自身詳しくはありません。
・ツリー全体表示

【604】doc.ファイルをファイル名をそのままでテキ...
質問  kuroda  - 09/2/26(木) 12:38 -

引用なし
パスワード
   初めてお世話になります。
win vistaでword 2007を使用している者です。
仕事がら、wordのドキュメントファイル(.doc)を名前を付けて保存で書式なし(.txt)保存をする機会が非常に多いので、この作業をマクロにしたいと常々思っています。
VBAについてはほとんど知識がないので、マクロの記録コマンドでマクロを作っております。
マクロの記録を使って私が作成すると、一応できるのですが、ファイル名と保存するフォルダ名が固定されてしまいます。
希望は、「あいうえお.doc」というファイルを、そのファイルが入っているフォルダに、同じファイル名で「あいうえお.txt」と保存したいのですが。
それと文字コードはUTF-8で保存したいと思います。
ご存知の方いらっしゃいましたら、よろしくお願い致します。
・ツリー全体表示

【603】Re:Word上のUserformから得た情報を所定の...
お礼    - 09/2/24(火) 17:48 -

引用なし
パスワード
   マクロマンさん

素早い返答ありがとうございます。
早速試して見たところ、望んでいた通りにできました。
ありがとうございます。

独学で学んでいたこともありわからないことだらけですが、もっと勉強をしてお手を煩わせないように頑張ります。
・ツリー全体表示

【602】Re:Word上のUserformから得た情報を所定の...
発言  マクロマン  - 09/2/24(火) 15:52 -

引用なし
パスワード
   忘れ物がありました。

>ExObj.Quit
↑の後に
Set ExObj = Nothing
も入れておいてください。
・ツリー全体表示

【601】Re:Word上のUserformから得た情報を所定の...
発言  マクロマン  - 09/2/24(火) 15:50 -

引用なし
パスワード
   >Excelファイルを開く動作が現れることなく記録したいです。

ExObj.Visible = True
としたらエクセルが表示されます。

>ExObj.Visible = True
を入れないか、あるいは
ExObj.Visible = False
としたらエクセルが非表示になります。
非表示にはなってますがエクセルは起動してますので、
作業完了後はブック、アプリケーションを閉じる必要があります。
・ツリー全体表示

【600】Re:Word上のUserformから得た情報を所定の...
発言  マクロマン  - 09/2/24(火) 15:46 -

引用なし
パスワード
   ワードVBAでエクセルを制御する方法です。
一度エクセルをオブジェクトとして設定したら後は
エクセルVBAと変わりはないです。

'参照設定:Microsoft Excel **.* Object Library

Sub xlseigyo()
Dim ExObj As Object
Dim objwb As Object
Dim wbpath As String
 wbpath = "D:\test\AA.xls"
 Set ExObj = CreateObject("Excel.Application")
 Set objwb = ExObj.Workbooks.Open(wbpath)
 objwb.Worksheets(1).Cells(1, 1).Value = "hoge"
 objwb.Save
 objwb.Close
 Set objwb = Nothing
 ExObj.Quit
End Sub
・ツリー全体表示

【599】Word上のUserformから得た情報を所定のExc...
質問    - 09/2/24(火) 9:01 -

引用なし
パスワード
   HP上で、Wordにて作成したUserformにてアンケートを実施し、その際にアンケート結果を自動的に所定のExcelファイルに保存する場合どのようにすればいいのかわからなくて困っています。
可能であるならば、Excelファイルを開く動作が現れることなく記録したいです。
要するに、Wordにて入力したデータを所定のExcelファイルに、Excelファイルを開くことなく保存したいです。
(Excelのみであるならば作成したUserformから自動保存はできましたが、Wordとなると勝手が違って途端にできなくなりました。)
・ツリー全体表示

【598】Re:ワード内の色がついた文字をマクロ(VB...
発言  とおりすがり  - 09/2/8(日) 18:07 -

引用なし
パスワード
   マルチ先で解決したのでこちらは放置のようです。
・ツリー全体表示

【597】Re:ワード内の色がついた文字をマクロ(VB...
発言  とおりすがり  - 09/1/27(火) 21:13 -

引用なし
パスワード
   回答者への参考のため張ってておきます。

ワード内の色がついた文字をマクロ(VBA)で削除したい
http://security.okwave.jp/qa4665405.html?ans_count_asc=20
・ツリー全体表示

【596】ワード内の色がついた文字をマクロ(VBA)...
質問  たろう  - 09/1/27(火) 19:24 -

引用なし
パスワード
   お世話になります。

色指定で置換処理を実行するマクロを作成したいと思っています。

置換¥オプション¥書式¥色指定で空白と置換 の作業を
「マクロを記録」の状態で実行したのですが、マクロに記録されません。。。

VBAに追記する形、どのような形でもいいのでマクロで色指定も含めた置換方法を教えていただけないでしょうか?

何卒よろしくお願いします。
・ツリー全体表示

【595】Re:VBE(Word)に入力できなくて困っています
お礼  VBE困り中  - 09/1/27(火) 16:13 -

引用なし
パスワード
   りる様、アドバイスありがとうございます。

おっしゃるとおり、IMEの問題でした。
ただし、再起動だけでは直りませんでした。
どうやら、IMEの機能の「テキストサービス」が影響していたみたいです。

IMEの設定を下記のサイトを参照して、トラブルを解決することが出来ました。

テキストサービスが有効になっている際に発生する現象について
htt p://support.microsoft.com/default.aspx?scid=kb;ja;898663
・ツリー全体表示

【594】Re:VBE(Word)に入力できなくて困っています
発言  りる  - 09/1/17(土) 16:31 -

引用なし
パスワード
   VBE困り中 さん、こんにちは。

>また、解決方法等ご存知でしたら、お知恵を貸してください。

参考程度ですが。
htt p://www.accessclub.jp/bbs3/0444/superbeg130568.html

PCの再起動をされましたか?
再起動で治る問題はけっこう多いです。

あと、Wordのバージョンは何ですか?
MacのWordでそういう現象がある(あった)事もログで出てきました。
マイクロソフトの情報へのリンクは残念ながら消えているようですが。
・ツリー全体表示

【593】VBE(Word)に入力できなくて困っています
質問  VBE困り中  - 09/1/13(火) 11:26 -

引用なし
パスワード
   Wordで、マクロの編集を行っていたところ、
急にVisual Basic Editor(VBE)にて入力できなくなりました。

日本語の入力を行おうとすると、現在アクティブなVBE画面ではなく、
表示されていないWord文書の方に入力されています。

半角英数字のみの場合は、VBEに入力できるのですが、
スペース(半角・全角両方)と日本語入力をすると、
Word文書に入力されてしまいます。

上記の現象で、まともにマクロの編集ができません・・・
同じような現象を経験した方、いませんか?
また、解決方法等ご存知でしたら、お知恵を貸してください。
宜しくお願いします。
・ツリー全体表示

【592】エクセルからの差込印刷で空白エラー
質問  カーレスキュウリ  - 08/12/13(土) 14:06 -

引用なし
パスワード
   助けてください。

 職場のエクセルシートからワードへ差込による帳票を作成しています。
以下の条件の時にうまく表示されません。どのように設定すればうまく表示されるのでしょうか?

・ 住所録のようなシートですがE列は日付けの列です。
・ E列はセルの書式設定で日付(H13.5.19の形式です)
・ その他の列には住所や氏名が並んでいます。
・ Eの日付は行によって入っているもの、いない行があります。
・ ワード上ではフィールドの表示設定によって「平成○年○月○日」と表示させています。
・ 1レコード目(すなわちセルE2)空白であったときワードでは表示されないのはいいんですが、E3に例えば「H20.1.1」とのデータが入力されていても「平成20年1月1日」ではなく本日の日付である「平成20年12月13日」と表示されるときがある。

といった状態です。で、これをなんとか1レコード目が空白であっても2レコード目が正しく表示されるようにしたいのです。

 これはワードの設定なのでしょうか?それともエクセルの設定なのでしょうか?どのように設定すればよいのでしょうか?よろしくお願いします。

ちなみにエクセルワードは2003、OSはXP SP2です。
・ツリー全体表示

【591】Re:変更履歴のページ番号
回答  りる  - 08/9/13(土) 17:49 -

引用なし
パスワード
   夏虫 さん、こんにちは。

>Revisionsプロパティを使用して、内容は抽出できましたが、
>履歴に紐付くページ番号の抽出方法が分かりません。
紐付くページ番号という意味がわかりませんが、履歴に関連するのがどこのページが知りたいという意味でしょうか?

範囲に関する情報(ページ番号とか)を取得するにはInformationプロパティを使用します。

Sub Macro1()
  Dim obj As Revision, msg As String
  For Each obj In ActiveDocument.Revisions
   With obj
     'ページとタイプと内容を表示
     msg = "TYPE: "
     'タイプを分岐 wdRevisionInsert => Insertと表示しています。
     Select Case .Type
      Case 1: msg = msg & "Insert"
      Case 2: msg = msg & "Delete"
      Case 3: msg = msg & "Property"
      Case 4: msg = msg & "ParagraphNumber"
      Case 5: msg = msg & "DisplayField"
      Case 6: msg = msg & "Reconcile"
      Case 7: msg = msg & "Conflict"
      Case 9: msg = msg & "Replace"
      Case 10: msg = msg & "ParagraphProperty"
      Case 24: msg = msg & "Marking"
      Case Else: msg = msg & "???"
     End Select
     msg = msg & vbCrLf
     msg = msg & "TEXT:" & .Range.Text
     '
     MsgBox msg, vbInformation, "Page " & _
        .Range.Information(wdActiveEndAdjustedPageNumber)
   End With
  Next
End Sub
・ツリー全体表示

【590】Re:VBでワードの書式を設定したい
お礼  みかん  - 08/9/12(金) 17:26 -

引用なし
パスワード
   りるさん

教えていただいてありがとうございました。
本当に困っていたので助かりました。
今後ともよろしくお願いします。
・ツリー全体表示

16 / 45 ページ ←次へ | 前へ→
ページ:  ┃  記事番号:
207512
(SS)C-BOARD v3.8 is Free