一太郎で作成したファイルをWindowsでWordで開くように設定しあります。Wordで開いた後に【名前をつけて保存】ファイル名はそのまま使用したいので【保存】【ファイルを閉じる】と言う操作をマクロを使ってやろうとしてるのですが、マクロを実行しようとするとファイルが閉じるだけで、保存されていません。
マクロの記録で上記の操作を一通り実行し記録の終了だけではダメでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (5件)

こんにちは。

Wendy02です。

>Application.Quit
>'Application.Quit
>は何が違うんでしょうか?

いえ、私の個人的な経験からです。どうも、アプリケーション(Word)をいきなり閉じてしまうということに抵抗があったから、コメントアウト(「'」を先頭につけること)していたのです。

すんなり終わってくれればよいのですが、何かが、プロセス上で残る可能性を心配して、問題なければ、そのコメントアウトを外してくれればよい、ということで書きました。

なお、テキストファイル全部をWord ドキュメントに変換して、閉じるのなら、以下のようにすればよいと思います。(Word .Doc は、そのままになります) 同じファイル名の場合は、枝番が付きます。

8114301a.txt
  ↓
8114301a.doc
  ↓
8114301a_1.doc '間違って同じテキストファイルを開けて行った場合

試してみてください。

'------------------------------------------------

Sub DocsSaves()
Dim wd As Variant
Dim FileName As String
Dim SaveName As String
Dim i As String
Const Ext As String = ".doc" '拡張子
Const MYPATH As String = "C:\Documents and Settings\[ユーザー名]\デスクトップ\Word\"

For Each wd In Application.Documents
 If InStr(wd.Name, ".txt") > 0 Then
 SaveName = Mid(wd.Name, 1, InStrRev(wd.Name, ".") - 1)
 
 '同名がある時は枝番をつける
 Do While Dir(MYPATH & SaveName & Ext) <> ""
   i = "_" & CStr(Val(Mid(i, 2)) + 1)
   SaveName = SaveName & i
 Loop
 
  wd.SaveAs MYPATH & SaveName, FileFormat:=wdFormatDocument
  SaveName = ""
  i = ""
 End If
  wd.Close False
Next wd
 Application.Quit
End Sub

'------------------------------------------------

もしかしたら、余計な部分を入れてしまったかもしれません。その時はおっしゃってください。

この回答への補足

ありがとうございます。一度に開いているワード全てのファイルの拡張子をかえて、目的のフォルダーに保存することが出来ました。
以下について、良く理解できなかったのですがどういうことでしょうか?
8114301a.txt
  ↓
8114301a.doc
  ↓
8114301a_1.doc '間違って同じテキストファイルを開けて行った場合

よろしければ、解説お願いします。

補足日時:2006/08/25 15:15
    • good
    • 0

こんにちは。

Wendy02です。

こちらでは、一太郎ファイルがありませんので、txt ファイルで試しています。それで誤解を与えてしまいました。

同じ一太郎ファイルを開ける可能性がなければよいのですが、先ほどやってみて、同じファイルを開けて行うと、ダイアログが出てきて、「既にそのファイルはある・・・」なんていうメッセージが出てきます。

Application.DisplayAlerts = False なんていう技もありますが、それで、前のものを消すのも問題かなって思って、枝番をつけて保存することにしました。



Wordで 以下のファイルを開けました。

 8114301.jtd (一太郎ファイル)
   ↓
 8114301.doc (Wordファイルで保存)


 8114301.jtd (もう一度同じ 一太郎ファイルを知らずに開けて実行してしまった)
   ↓
 8114301_1.doc (枝番をつけて、Wordファイルとして保存)

ということをします。

8114301.doc
8114301_1.doc

と同じものですが、上書きせずに、枝番で別のファイルになっています。
余計なことかとは思いましたが、上書きしてなくなってしまう、安全を考えました。お分かりになりますでしょうか?
    • good
    • 0
この回答へのお礼

ありがとうござます。理解できました。8114301と言うのはファイル名だったんですね。何かのコードかと思いました。(笑)
問題なく目的の作業が出来るようになり、感謝いたします。ありがとうございました。ホントに助かりました。

お礼日時:2006/08/25 16:35

こんにちは。

Wendy02です。

>デスクトップ上のワードというフォルダーに保存する。

キメウチ(固有のPCのデスクトップ)でよろしいですか?
キメウチでない(どのPCにも応用できるもの)と、少し考えなくてはなりません。。

例えばこんな風にして

MY_PATH As String = "C:\Documents and Settings\[ユーザー名]\デスクトップ\Word\"

[ユーザー名], Word の部分をそちらのPCに合うように書き換えてください。

Sub TestSaveR()
Dim FileName As String
Dim SaveName As String
Const MYPATH As String = "C:\Documents and Settings\[ユーザー名]\デスクトップ\Word\"

 FileName = ActiveDocument.Name
 SaveName = Mid(FileName, 1, InStrRev(FileName, ".") - 1)
 
 ActiveDocument.SaveAs MYPATH & SaveName, FileFormat:=wdFormatDocument
 ActiveDocument.Close False
 Application.Quit
End Sub

この回答への補足

Wendy02さん
ありがとうございます!出来ました。感謝です。
しかし、ファイルを同時に10個開いて、一つ目のファイルで実行すると一つ目のファイルは保存できるんですが、その他のファイルも同時に閉じてしまいます。最初に教えていただいた方法だと一つずつマクロを実行することが出来たんですが・・・。よろしくお願いします。

補足日時:2006/08/25 12:26
    • good
    • 0
この回答へのお礼

自分なりに考えて、以下の行を削除したらうまく行きました。
Application.Quit
本当にありがとうございました。最後にもう一つ質問させてください。
Application.Quit
'Application.Quit
は何が違うんでしょうか?

お礼日時:2006/08/25 12:33

こんばんは。



たぶん、ファイルフォーマットを変えてあげないといけないのだと思います。

拡張子は、以下の
& ".doc"

は、本来要りませんが、一応、拡張子は、Wordの標準で付けておきます。

また、保存先が、以下の場合、カスタマー設定のデフォルトフォルダになります。当たり前のことですが、一応、VBAのコードの保存先は、Normal.Dot 側がよろしいかと思います。

Sub TestSave()
Dim FileName As String
Dim SaveName As String
 FileName = ActiveDocument.Name
 SaveName = Mid(FileName, 1, InStrRev(FileName, ".") - 1) & ".doc"
 
 ActiveDocument.SaveAs SaveName, FileFormat:=wdFormatDocument
 ActiveDocument.Close
 'Application.Quit
End Sub

この回答への補足

ありがとうございました。出来ました。大変助かります。

>保存先がカスタマー設定のデフォルトフォルダー・・・

こちらは変更できるでしょうか?もしくは、特定のフォルダーに保存するように出来るでしょうか?
例えば、デスクトップ上のワードというフォルダーに保存する。と言う感じです。
よろしくお願いします。

補足日時:2006/08/25 07:42
    • good
    • 0

Sub test()'保存してファイルを閉じる


ThisDocument.Save
ThisDocument.Close
End Sub

Sub test2()'保存してwordを終了する
ThisDocument.Save
Application.Quit
End Sub
    • good
    • 0
この回答へのお礼

回答ありがとうございました!

お礼日時:2006/08/25 07:42

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qエクセル(マクロ記録)

よろしくお願いします。
エクセルで、印刷マクロを作ろうと考えています。
             (基本、入門者です)
マクロ記録で、作っていますが、
記録終了するたびに「 印刷 」がかかっては、
用紙が何枚あっても足りません。

いい考えがありましたら、お教えください。
お願いします。

Aベストアンサー

#3の回答者です。

>出来たら、この i=1 の意味を教えていただけませんでしょうか?
単に、それはページ数です。

ヘルプを引用します。(PrintOut で調べました)

式.PrintOut(From, To, Copies, Preview, ActivePrinter, PrintToFile, Collate, PrToFileName, IgnorePrintAreas)

From オプション 印刷を開始するページの番号を指定します。この引数を省略すると、最初のページから印刷します。
To オプション 印刷を終了するページの番号を指定します。この引数を省略すると、最後のページまで印刷します。

と出てきます。

Qword2000で作成したファイルをword2003で開くことができない

下記を試行しましたが、全てちゃんと開くことができませんでした。
・通常ファイルOPEN
・ファイル修復コンバータによるファイルOPEN
・ワードパッドによるファイルOPEN
・エディタによるファイルOPEN

word2000ではOPEN・EDITできますが、
word2003ではOPENすらできない状況です。

どなたか、対応ご教示願いたいと思います。

Aベストアンサー

こちらも参考に

[WD2003] 以前のバージョンの Word で開けるファイルが開けない
http://support.microsoft.com/default.aspx?scid=kb;ja;841038
文書を開けない場合の対処方法
http://support.microsoft.com/kb/826864/JA/#XSLTH3181121122120121120120

Qエクセル マクロコードの記述の勉強

独学でエクセルでのマクロのコード記述ができるようになりたいのですが、コードがかける人はどのようにしてかけるようになったのでしょうか?

プログラミング関係にはまったくの初心者なので、入門本を立ち読み程度読んでみたのですが、「面白そうだが、かなり手強そう」というような印象でした。

現実的な問題として、実際にコードをかける人は、プログラミング関係の学校等で学んだ人ぐらいしかいないのでしょうか?

めざすレベルはエクセルでこうしたいと考えたものを調べながらコードをかける程度のレベルです。

Aベストアンサー

> 実際にコードをかける人は、プログラミング関係の
> 学校等で学んだ人ぐらいしかいないのでしょうか?

そんな事ないです。私も独学で覚えましたから。

エクセルはマクロ記録がありますので、実際の操作を記録して書かれたコードを追っていったり、書き直したり出来ます。
VisualBasicEditor画面でコードにカーソルを置き、F1キーを押すとVBAヘルプ(たしか標準ではインストールされないので追加インストールの必要がある)が開くので、意味を調べたり、サンプルコードを見たりして覚えて行きました。
ネットにも沢山サンプルがありますし。

変数の使い方とforやif等を覚えてマクロ記録を直すだけでも結構便利になります。

Qwordを使わずwordのファイルを開きたい。

私はマイクロソフトのWordを使用していませんが、所属しているグループからWordで作ったファイルが送られてくることがあります。これを開くためにWord Viewerを使っていますが、Word2007や2010で作られたファイルは正しく開けないことがあります。特に、画像が入ったものはうまくいかないようです。Word2007や2010で作られたファイルを開くことが出来るフリーソフトは無いでしょうか?

「なるべくお金をかけないでパソコンを楽しもう」と思っていますので、フリーソフトが良いのですが、適当なものが無ければKingSoftの使用も考えています。このソフトの互換性はどうでしょうか?分る方がいらっしゃれば合わせて教えて頂けると幸いです。

Aベストアンサー

Microsoft Office Web Apps を使ってみるといいでしょう。
Microsoftアカウントさえ取得すればすぐに使えますよ。
http://office.microsoft.com/ja-jp/web-apps

Qエクセルについているマクロが出てこない・・・

 エクセルをひらき、ツール→マクロ→マクロでマクロの作成ができると聞きましたが、私のエクセル2002ではマクロのその機能が空欄状態です。復帰や回復できる方法を教えて下さい。

Aベストアンサー

(1)自分でマクロの記録を採る。
    ツールーマクロー新しいマクロの記録
(2)または他人がマクロの記録をとった。
   (3)他人がVBAコード(プログラム)を組んだ
    ツールーマクローVBEープログラム作成
場合に出てくる。(1)(2)(3)ともやっていないから、出てこないのは当然。
(1)なぞはマクロの画面でマクロー編集でコードが見れます。
ーーー
本でもWEBでも、マクロに関する本1冊か、「エクセル マクロ」でWEB照会して、勉強し。予備知識をえるべきです。

Q一太郎の$tdファイルをWordで開きたい

一太郎(バージョン不詳 11/10/9/8のうちいずれか)で作成した文書が添付されてきました。
いったん保存し、Word2000(OS:Win Me)で開こうと「ファイルを開く」で「一太郎8/9」を選択したのですが、問題のファイルが表示されませんし、「すべてのファイル」で開いてもまったく読めません。

拡張子$tdはバックファイルだということはわかったのですが、このファイルはWordで開くことができないのでしょうか?
JUSTSYSTEMのFAQも見たのですが良くわかりません。

いつもは先方にFAXで再送してもらっていたのですが、今回枚数が多く、また今後のために対策を取りたいのです。
宜しくお願いします。

Aベストアンサー

拡張子をJTDに書き換えて下さい。
これでWordから一太郎のファイルとして認識されます。

Qエクセル2010で作成したマクロ

エクセル2010で作成したマクロブックがあります。
このエクセルを知人にメールで送りました。

知人のエクセルは2007です。
マクロブックのフォームボタンを押しても何も動作しない状況との事です。

エクセル2010で作成したマクロブックはエクセル2007と互換性がないのでしょうか?

素人の質問で申し訳ありませんが、ご指導お願いいたします。

Aベストアンサー

>エクセル2010で作成したマクロブックはエクセル2007と互換性がないのでしょうか?

ご相談の状況からすると、まずそういう事はありません。
まぁ2010でしか動かない内容であなたがマクロを作成した可能性は確かにありますが、その場合でも「何も動作しない」という事はありません。ふつーにエラーが出て止まります。



一応あなたの側で確認しておくべきポイントとしては、
○間違ったブックを送っていないか再確認する
 ・ちゃんとマクロを付けたブックを送ったか確認する
 ・名前を付けて保存でファイルの形式をマクロ有効ブックにして保存したのを送ったか再確認する
といったところをよく確認してください


先方に対してあなたが確認すべきポイントとしては、
○「何も起こらない」とは、具体的にどんな状況なのか再確認する
 ・ホントにうんともすんとも反応が無いということなのか
 ・実は何かエラーメッセージっぽいダイアログが現れて、OKをクリックしてもマクロが動作した様子が無いとかの状況では無かったか



具体的な状況が明らかになったら、ようやく対処を検討する事ができるようになります。
●そもそもどういうマクロを作成したのか、ご自分の作成したマクロをよく確認して、「反応が現れない」マクロを書いてたんじゃないのか再確認する
 たとえば無意味にon error resume nextのような仕込みをしてたりしないか
 たとえば不適切なデータに対して何も作動せずに終わってしまうようなそもそも作りにしてたんじゃないか
 とか。

●実は何かダイアログが出てたのなら、具体的にどんなダイアログなのか正確に聞き取って、あなたの方で対処を考える
 「マクロが無効になってる」のなら、マクロを有効にして実行するように伝える
 とか。

>エクセル2010で作成したマクロブックはエクセル2007と互換性がないのでしょうか?

ご相談の状況からすると、まずそういう事はありません。
まぁ2010でしか動かない内容であなたがマクロを作成した可能性は確かにありますが、その場合でも「何も動作しない」という事はありません。ふつーにエラーが出て止まります。



一応あなたの側で確認しておくべきポイントとしては、
○間違ったブックを送っていないか再確認する
 ・ちゃんとマクロを付けたブックを送ったか確認する
 ・名前を付けて保存でファイル...続きを読む

QWordファイルから別Wordファイルのマクロを起動したい

Word2003でマクロを作成しました。

WordファイルAにはマクロを保存したくないので、
WordファイルBに保存しています。
このマクロをWordファイルAから起動したいのですができません。
WordファイルAを開き「マクロの実行」ダイアログボックスから
WordファイルB内のマクロを選択して
「実行」ボタンを押して実行したいのですが、
一覧にマクロ名が表示されないのです。

Excelの場合は、ExcelファイルAからExcelファイルBのマクロを
呼び出すことができるのですが、
(例えばブック名!モジュール名.マクロ名)
Wordではできないのでしょうか?
何か設定が必要でしょうか?

ご存知の方がいらっしゃいましたら、
よろしくお願いいたします。

Aベストアンサー

こんばんは。

>(例えばブック名!モジュール名.マクロ名)
この方法は、私は、Excelの場合のほうが特殊だと思います。
Excelは、モジュールが複雑なので、固有のマクロを呼び出さざるを得ないわけです。

もちろん、Wordでも、Application.Run で呼び出すことは可能ですが、そういうことは、Wordではあまりしません。

Wordの場合は、ActiveDocument にはマクロをいれずに、基本的に、Normal.dot にマクロを入れる構造になっています。だから、Normal.dot(C:\Documents and Settings\[UserName]\Application Data\Microsoft\Templates\ または、...Microsoft\Word\STARTUP\) の標準モジュール等(ローカルモジュール・プロシージャ以外)に入れさえすれば、どこでも呼び出しが出来るようになっています。後者のSTARTUPに入れたほうが加工がしやすいです。

似てはいても、ExcelのPERSONAL.XLS とは、基本的な呼び出しの構造が違います。Wordは自動的に参照設定が組まれています。

他には、テンプレートフォルダ(C:\Documents and Settings\[UserName]\Application Data\Microsoft\Templates\)、テンプレートファイル(.dot)に入れて、メニューのツール-テンプレートとアドインの中で、追加で、dot ファイルを選ぶ方法があります。もしくは、...Microsoft\Word\STARTUP\ にテンプレートファイルを入れることで、呼び出します。

そうでない場合は、A,B の片方を参照設定します。しかし、参照設定すれば、Aを開けば、必ずBが開いてしまいます。

少しフォルダの位置がややこしいですが、良く読んで試してみてください。

こんばんは。

>(例えばブック名!モジュール名.マクロ名)
この方法は、私は、Excelの場合のほうが特殊だと思います。
Excelは、モジュールが複雑なので、固有のマクロを呼び出さざるを得ないわけです。

もちろん、Wordでも、Application.Run で呼び出すことは可能ですが、そういうことは、Wordではあまりしません。

Wordの場合は、ActiveDocument にはマクロをいれずに、基本的に、Normal.dot にマクロを入れる構造になっています。だから、Normal.dot(C:\Documents and Settings\[UserName]\Applic...続きを読む

Qエクセルで作成したマクロが他のシートに反映しない

必要に迫られ始めてマクロをエクセル上で作成してみました。(初心者)
そのマクロを違うエクセルファイル上でも反映させたいのですが
マクロを作ったおおもと(最初)のファイルを閉じてしまうと違うエクセルファイルを開いてもマクロが反映されていません。
マクロでの命令内容としては 
エクセル上の数字の羅列→グラフ作成→上書き保存 という手順で作りました。
他のエクセルファイルも同じように数字の羅列があります。それを同じ作業(グラフ作成→上書き保存)したいのです。
一度作ったマクロを他のエクセルファイルにも反映させるにはどうしたら良いのでしょうか?
説明がわかりにくくてすみません。
よろしくお願いします。

Aベストアンサー

マクロの記録先を「個人用マクロブック」にするのが良いと思います。
一回マクロの記録を行い「保存先」を「個人用マクロブック」にします。するとPERSONAL.XLSという特別なブックが作成されます。

このブックの標準モジュールシートに先に作ったマクロを貼り付けてください。

そうすればエクセルを開くと、どのブックでもマクロが実行可能になります

Q一太郎で作成したファイルが勝手にWORDになってしまう。一太郎のままにしたい。

一太郎2017を購入して文書を作成し、jtdの拡張子で保存するのですが、勝手にアイコンがワードになり、ワードに変換された状態になってしまいます。ワードは2016で、もともとパソコンにインストールされていました。作成された文書(ワードのアイコン)を右クリックして、「プログラムから開く」をしようとしたのですが、「一太郎」が表示されません。
一太郎のまま保存し、一太郎のままファイルを開くにはどうしたらよいでしょうか?

Aベストアンサー

#1です。
Windows10でしたか、以下を参考にしてください。
http://support.justsystems.com/faq/1032/app/servlet/qadoc?QID=055807


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング