- ベストアンサー
エクセル2003でテキストファイルへ変換
エクセル2003を使用しております。 客先から送信されてきたエクセルファイルを テキストファイルへ変換する作業をしておりますが、 セル内に入力されたデータに関してはテキストファイルに 変換しても問題ないのですが、 オートシェイプで作図して、その中にテキストで入力された データに関しては、テキスト形式で保存してもなにも入っていませんでした。 オートシェイプの罫線は必要なく、中に入力されたテキストデータだけ 必要なので、現在は、1つ1つテキストデータを選択してコピーして、メモ帳にペーストいるので、時間が掛かってしまいます。 オートシェイプ内に入力されたデータも含めて、テキスト形式でファイルを保存することはできますでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
補足します。 以下のコードを使ってください (先ほどのコードを書いていたら、消してコピー貼り付けをやり直してください) Sub test() ActiveCell.Value = Selection.Text End Sub Excel画面の作業は次の通りになります。 書き込みたいセルを選択します。 次に、オートシェイプ(テキストボックス)を選択します。 (このとき他のセルを選択しないように注意) マクロを実行します。
その他の回答 (2)
- NMBtoshi
- ベストアンサー率60% (3/5)
VBAならできます。すごく荒っぽいコードですが、ともかく急ぐならと 思いました。 VBAの知識がなくても以下の通りにやればできますよ。 Excelメニューからツール→マクロ→Visual Basic Editor(V)ー以後VBE-を選びます。 VBE画面の左側にプロジェクトウィンドウが出ているはずです。 そこに、現在作業中のシート名があるはずです。 そのシート名をWクリックしてください。 そして、右側の広い方のウィンドウ内に下のコードをコピーして貼り付けます。 Sub TEST() ActiveSheet.Range("A1").Value = Selection.Text End Excelの画面に戻ります。(タスクバーから取り出す) お好みのオートシャイプ(テキストボックス)を選択しておきます。 Excelメニューのツール→マクロ→マクロ(M)をクリックします。 現れるマクロダイアログの<実行>をクリックします。 ”A1”のセルにテキストが表示されます。 "A1" から任意のセルへ移し変えます。 とりあえず、A1セルを窓口に書き込むようになっていますが、VBEでコードの ("A1")のところを"B1"、"A2" などご希望のセルに書き換えれば、そこに書き出されます。 (他にマクロが書かれていないこと前提にしています。)
こんにちは。 関数や通常の機能としてはたぶん無理でしょう。VBAを使ってオートシェイプから取り出せば出来ると思います。 しかし、VBAを使ったことがなければ難しいと思います。 そこで代案です。 オートシェイプに直接入力するのではなく、セルとリンクするようにします。 オートシェイプで文字を入力できる状態にして数式バーに =$A$1 と入力します。 A1に入力するとオートシェイプにも表示されます。 どうでしょうか。