- ベストアンサー
【Excel】特定セルの内容をテキストファイルに書き出したい
こんにちは セルA1に =A2&A3&A4 A2からA4までの文字を繋げて表示しています。 このA1に表示されている内容を テキストファイル(例:abc.txt)に 簡単に保存できるマクロを教えて下さい。 Excel2003 です。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
テキスト形式で保存 ↑をマクロの自動記録してみてください。 新規シート追加 ↓ 保存したいセル範囲を新規シートにコピー ↓ 新規シートを新規ブックに移動 ↓ 新規ブックをテキスト形式で保存 ↓ 新規ブックを閉じる 以上でできます。 でも、下のような簡単な方法もあります。 フォルダの指定がないのでデスクトップにしてあります。 ub txtkakidasi() Dim txtmei As String Dim newtxtstr As String Dim fnum As Integer newtxtstr = ActiveSheet.Range("A1").Value txtmei = "C:\Documents and Settings\hoge\デスクトップ\abc.txt" fnum = FreeFile Open txtmei For Output As #fnum Print #fnum, newtxtstr; Close fnum End Sub Sub txtkakidasi2() Dim txtmei As String Dim newtxtstr As String Dim FSO As Object Dim f As Object newtxtstr = ActiveSheet.Range("A1").Value txtmei = "C:\Documents and Settings\hoge\デスクトップ\abc.txt" Set FSO = CreateObject("Scripting.FileSystemObject") Set f = FSO.CreateTextFile(txtmei) f.write newtxtstr f.Close Set f = Nothing Set FSO = Nothing End Sub
その他の回答 (2)
- marbin
- ベストアンサー率27% (636/2290)
#1で提示したコードは、既同名のファイルが存在したらエラー になります。 "abc.txt"は定数ですが、 Dim txtmei As String Dim fol As String Dim txtpath As String fol = CreateObject("WScript.Shell").SpecialFolders("Desktop") txtmei = "abc" txtpath = fol & "\" & txtmei & ".txt" というようにフォルダ、テキストファイル名ともに変数で指定することも出来ます。 また、 If Dir(txtpath) <> "" Then MsgBox txtpath & VbCrLf & "は既に存在するファイル名です。" Else 'テキストファイル保存するコード End If というように既にファイルが存在するか判定して条件分岐することも可能です。
- hallo-2007
- ベストアンサー率41% (888/2115)
マクロの記述で出来ると思います ツールバーのマクロ=>マクロの記録 1、A1セルのコピィ 2、ファイル=>新規作成 3、新規ブックのA1セルに貼り付け 4、新規ブックの終了=>ファイル名 abc ファイルの種類 テキスト形式 5、コピィモード終了(Esc) マクロの終了で作成できたコードをアレンジしてみてください。
補足
こんにちは。 回答頂き有難うございます。 マクロで・・・と言っておきながらマクロはほとんど分かりません。 教えて頂きましたマクロを実行すると 「コンパイルエラー:プロシージャの外では無効です」 となってしまいました。 また、abc.txtを保存すると、このExcelファイルが「abc.txt」となってしまうので、 保存終了の際に「名前をつけて保存」をしなければなりません。 abc.txtは別に常に上書きされて、 このExcelは.xlsで保存して終了したいのですが・・・。 ややこしくてすみません。