アプリ版:「スタンプのみでお礼する」機能のリリースについて

計算が終了したシートからデータをコピーして、それをメモ帳に貼り付けて作成しておいたフォルダの中に名前を付けて保存する方法が知りたいです。
とりあえずフォルダの作成まではできました。

Sub フォルダをつくる()
MkDir "c:\test"
End Sub

上記のフォルダ内に、データをメモ帳に貼り付けて保存していきたいです。
計算が終わったエクセルシートから
「B3:C43、E3:D43、H3:I43、…、KM3:KN43」までの
複数のデータを抽出し、それぞれをメモ帳に貼り付けていきたいので
For ~ Nextをつかってループさせる予定です。
上記のフォルダ内に複数個のテキスト形式のデータを名前を付けながら保存させるプログラムを教えていただきたいです。

A 回答 (3件)

マイドキュメントもしくは


エクセルのオプションのカレントフォルダで設定した場所に保存されています。
    • good
    • 0
この回答へのお礼

教えていただいたコードを自分なりにアレンジして任意のフォルダに保存できるようになりました。
保存先を指定するためにChdirを用いるとうまくできました。
アドバイスありがとうございました。

お礼日時:2009/11/15 00:14

あくまでも参考です


ブックは利用中の1個しか開いていないという仮定で
B3:C43、E3:D43…というように2列ずつ右に100列50組あると仮定してます。

Sub test()

Dim mFilename As String
Dim mColumn As Integer, NameCount As Integer

mColumn = 2
NameCount = 1

For mColumn = 2 To 102 Step 2
Range(Cells(3, mColumn), Cells(43, mColumn + 1)).Copy
Workbooks.Add
ActiveSheet.Paste
mFilename = "mybook" & NameCount & ".txt"
ActiveWorkbook.SaveAs Filename:= _
mFilename, FileFormat:=xlText, _
CreateBackup:=False
Workbooks(2).Close SaveChanges:=False
NameCount = NameCount + 1
Next i

End Sub

この回答への補足

プログラムを実行できました。
質問なのですが、このテキストデータはどこに保存されているのでしょうか?また、保存先のパスを入力すれば任意の場所に保存可能でしょうか?
よろしくお願いします。

補足日時:2009/11/14 21:30
    • good
    • 0

普通にテキスト形式で保存するのではだめなんですか?



ActiveWorkbook.SaveAs Filename:= _
"Book1.txt", FileFormat:=xlText, _
CreateBackup:=False

この回答への補足

テキスト形式で保存できれば問題ないです。
ただ1つのワークブック内にある
「B3:C43、E3:D43、H3:I43、…、KM3:KN43」までの約100個のデータを
1つずつ分けて保存していきたいです。
回答していただいたコードでも可能でしょうか?

補足日時:2009/11/14 19:31
    • good
    • 0

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

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