[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『エクセルデータをメモ帳に貼り付けてTabを削除したい』(Satoko)
毎々お世話になります。 日々の売上を管理するため、 A B C 1 FCT: 14,070 2 ACT: 18,351 (-5,530,054) 3 FCT比:130.42% 4 昨対比:294.00% 5 ■A会社 6 当日: 400,000 7 累計: 6,000,000 (-1,000,000) 8 FCT比:165.96% 9 昨対比:340.60%
のようなデータを作成しております。 (数字はすべて別ファイルからリンクさせてある) これを、アウトルックを使い携帯に毎日送信しているのですが、 このままをコピー&貼り付けすると、tabスペース(?)が入ってしまい、 フォーマットが崩れてしまいます。
そこで、このデータをいったんメモ帳に書き出し、その都度タブを置換させてきたのですが、 この作業をもう少し簡単に出来ないものかと思案しています。 現在は、「メモ帳を起動して、データを貼り付ける」というところまでのマクロを作成できたのですが、 さらにタブを置換、出来あがったデータをコピーまで出来ないでしょうか。 宜しくお願いします。
タブ=列間なので、3列しかデータがないのであれば、D列に文字列を結合させたデータを作成 すればよいかと思います。
D1=A1&B1&C1 D1コピー メール本文 送信でいかがですか? (通りすがり)
> このままをコピー&貼り付けすると、tabスペース(?)が入ってしまい、 > フォーマットが崩れてしまいます。
tabを除去するだけの問題なら 貼り付けのとき、Ctrl+V でやったら問題が解消するってことはないですか?
別途、成形が必要なら、(通りすがり)さんの案を工夫。
(半平太) 2010/02/05 13:14
通りすがりさま 半平太さま
早速の御回答ありがとうございます。 文字列の結合とは、目からうろこでした。 TEXT関数を間に挟み、結合したところ、無事目的が達成できました。 ありがとうございました。
解決済みのようですが VBAでやるのでしたら、そのまま加工してから クリップボードに格納して張り付けるなんて事も出来ます。
Sub test() '「Microsoft Forms 2.0 Object Library」に参照設定 Dim MyCB As New DataObject Dim tbl, tbl2, rv, i As Long tbl = Worksheets("Sheet1").Range("A1").CurrentRegion.Value ReDim tbl2(1 To UBound(tbl)) For i = 1 To UBound(tbl) tbl2(i) = Join(Application.Index(tbl, i), "") Next i tbl = Join(tbl2, vbCrLf) With MyCB .SetText tbl .PutInClipboard End With rv = Shell("NOTEPAD.EXE", 1) AppActivate rv SendKeys "^V", True End Sub
(momo)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.