
A.xlsのSheetBをメモ帳に貼り付けて名称をC2009.4.6.txt
にしたいと考えています。
SheetBのコピーをしメモ帳を起動後、メモ帳に貼り付けるところまではsendkey等で強引にやったのですが、「名前を付けて保存する」を手動で行わなければならないので
少々面倒くさく感じています。
作成したtxtファイルをD:E\に自動で保存させる方法はないでしょうか?
出来れば名称はデータ2009.4.6.txtの様に保存した日付が入ると助かります。また、同じ名称のものが既にあった場合はファイルネームに(2)が入るようにしたいと考えております。
どうかお知恵を拝借ください。
よろしくお願いします。
No.5ベストアンサー
- 回答日時:
#3についてですが、
参照設定されていないのでしょう。
http://www.asahi-net.or.jp/~ef2o-inue/vba_k/sub0 …
'Microsoft Forms 2.0 Object Libraryを見つけてチェックを入れて下さい。
mitarashi 様
お礼が遅くなってしまいまして申し訳ありませんでした。
教えていただいた方法でうまく作成することが出来ました!
何度も回答いただけたおかげで自分の思っていたことが出来、本当に感謝しております。
今後は少し自分でも勉強してせめて今回教えていただいたマクロの内容くらいは理解できるようになるようにがんばります。
度重なる質問に対し、対応いただき本当にありがとうございました。
お礼の言葉だけになってしまい申し訳ありません。
これで業務がかなりはかどります!!
No.4
- 回答日時:
こんなのではだめ?
Dim x As String
x = Format(Date, "yyyy.m.d" & ".txt")
Application.SendKeys (x), True
又は、ファイル名をクリップボードへ格納しておき、SendKeys でペーストするとか?
クリップボードを操作する(1) http://www.officetanaka.net/excel/vba/tips/tips2 …
No.3
- 回答日時:
#1&2です。
選択範囲がセルでないとき、何もしないで抜ける
If TypeName(Selection) <> "Range" Then Exit Sub
選択範囲をコピー
Selection.Copy
以上を削除すれば、「選択範囲をクリップボードにコピー」は無くせます。
この回答への補足
何度も本当にありがとうございます。
教えていただいたやり方を試したのですが、
Sub Sample()
Dim FSO
Dim buf As String, CB As New DataObject
の, CB As New DataObjectのところがコンパイルエラー:ユーザー定義型は定義されておりません。となってしまいます。
自分の知識ではこれが何を指すものなのかわかりません。
もしお時間が許せば引き続きご教示いただけると助かります。
ひとまず何度も回答どうもありがとうございました。
感謝です。
No.2
- 回答日時:
選択範囲をクリップボード経由でテキストファイルに書き出してみました。
(当方XL2000)
shabushabuさんのなさりたいことは、先の田中先生のサイトの諸パーツを組み合わせれば実現できます。クリップボードのコードもそこから借用しました。
'Microsoft Forms 2.0 Object Libraryを参照設定
'探すのが面倒なら、Userformを作って、何も入れずに解放しても参照設定は残る
Sub Sample()
Dim FSO
Dim buf As String, CB As New DataObject
If TypeName(Selection) <> "Range" Then Exit Sub
Set FSO = CreateObject("Scripting.FileSystemObject")
Selection.Copy
With CB
.GetFromClipboard ''クリップボードからDataObjectにデータを取得する
buf = .GetText ''DataObjectのデータを変数に取得する
End With
With FSO.OpenTextFile("C:\Sample.txt", iomode:=2, create:=True)
.Write buf
.Close
End With
Application.CutCopyMode = False
Set FSO = Nothing
End Sub
この回答への補足
mitarashi 様
回答、本当にありがとうございます。
教えていただいたマクロがいまいち理解できませんでした。
必要な内容のコピー(クリップボードにデータを保存)までは出来ている場合、どの様に記述を変更させれば良いのでしょうか?
お手数ですが、ご教示お願いします。
No.1
- 回答日時:
VBAで直接テキストファイルを書き出してはいかがでしょう。
書込は参考URLの一番下の方にあります。
http://officetanaka.net/excel/vba/filesystemobje …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バッチファイルが作成できない
-
Excelでdatファイルを作成??
-
複数のテキストファイルをexcel...
-
ファイル名の特定文字だけ削除...
-
batファイル処理でのテキストフ...
-
VBAからファイルをzip化したい
-
インデザインのテキスト流し込み
-
CADでグラフ作成
-
windowsへscp
-
複数のファイルを同時検索し、...
-
ダウンロード不可PDFファイルは...
-
バッチによるショートカットの...
-
Microsoft Access エラー 3051
-
VBAでファイルパスが長すぎてコ...
-
subversionからファイル取得時...
-
FTPサーバからファイルをダウン...
-
エクセルVBA フォームを開く時...
-
【Excel VBA】PDFを作成して,...
-
VBSで指定したフォルダにファイ...
-
レーザープリンターのA4・5...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelでdatファイルを作成??
-
複数のテキストファイルをexcel...
-
batファイル処理でのテキストフ...
-
バッチファイルが作成できない
-
複数のファイルを同時検索し、...
-
テキストファイルの文字色に色...
-
複数のテキストファイルをexcel...
-
一気にずばっと複数のメールを...
-
多数のテキストファイルを一度...
-
PCファックスの送り方(マル...
-
C言語を使用し、同じ内容のファ...
-
ヘルプファイルの翻訳
-
テキストファイルの連結ツール
-
PerlをWinで使いたい。
-
テキストファイルを、ファイル...
-
ExcelVBA テキストファイルから...
-
ファイル名の特定文字だけ削除...
-
辞書順に並べるソフトについて
-
外部テキストが読み込めない?
-
フォルダ名の一部を、テキスト...
おすすめ情報