プロが教える店舗&オフィスのセキュリティ対策術

皆様
よろしくお願い致します。

定型のメールやテキストをまとめてコピーし、エクセル上で貼り付ける際に、各項目に自動的に挿入する事は可能でしょうか?
文章だと分かり辛いので、サンプルを
========
お客様名 山田 太郎
電話番号 03-0000-0000
メールアドレス taro@yahooooo.co.jp
========
この様な決まったフォームのテキストが有ったとして
これをまとめてコピーし、ワンクリック等でそれぞれの
項目のセルに内容を挿入したいと考えています。

A1にはお客様名
A2には電話番号
A3にはメールアドレス

マクロを使用する事になるかと思いますが、全く知識が無く、困り果てております。
どなたかご教示頂ければ幸いです。
宜しくお願い申し上げます。

A 回答 (3件)

まずは「禁止事項」の「丸投げ・依頼」をお読みください


>マクロを使用する事になるかと思いますが、全く知識が無く、困り果てております。
勉強してください
質問の情報では不足ですので、大まかなコードしか提示できません
後は、質問者さんご自身でコードを修正する必要があります
また、質問をする場合も要点が明確で、回答側も回答がしやすくなります

以上の理由から、エラー処理等はしていません
最低限の説明しかしませんので、後はコードから読み取ってください

Sub test()
Dim CB As New DataObject
Dim a, b As Variant
Dim i, ii, iii As Integer
CB.GetFromClipboard
a = Split(CB.GetText, vbCrLf)
For i = 0 To UBound(a)
b = Split(a(i), " ")
iii = Range("a65536").End(xlUp).Offset(1).Row
For ii = 1 To UBound(b)
Cells(iii, 1).Value = Cells(iii, 1).Value & b(ii)
Next ii
Next i
End Sub

対象をコピーして、excel上でtestを実行
アクティブシートへ結果を出力します
「コンパイルエラー ユーザー定義型は定義されていません」がでる時は
一度userformを作成し、削除してください、必要なライブラリーが設定されます
    • good
    • 0

はじめまして



マクロを使用すればできます。

エクセルで読み込むかエクセル上にコピー&ペーストすれば、後はエクセル上で行うコピー&ペーストの操作になります。
(テキストならエクセルで読み込むことができます。メールはエクセルで直接読み込むことができませんが、テキストに保存すれば読み込めます。)

>マクロを使用する事になるかと思いますが、全く知識が無く、困り果てております。
まずは、
「ツール」-「マクロ」-「新しいマクロの記録」
を使って手作業でコピー&ペーストする作業をマクロ化してみてください。
いいサンプルプログラムになります。(マクロになれてくれば、そのまま使うよりも、もう少し効率のいい書き方ができます。)


あとは、
========
お客様名 山田 太郎
電話番号 03-0000-0000
メールアドレス taro@yahooooo.co.jp
========
のどれが「お客様名」でどれが「電話番号」で…
とエクセルに指示する部分がポイントとなります。
エクセルは文書を理解することはできないので、ちゃんと指示を与えなければなりません。

たとえば、必ず(!)1行目は「お客様名」で、以下の書式でかかれているとします。
お客様名[全角スペース]○○ △△
このときは、A1にコピーするデータとしては、
「1行目」から“お客様名[全角スペース]”を削除したもの
と指定できます。
ただし、例外があると上手くいきません。

このデータの前に他の情報が入っていて、「お客様名」が何行目にあるのか定まっていない場合には、まず「お客様名」を探すことからはじめなければなりません。

このように、元のデーターのルールによってプログラムの組み方が違ってきます。
    • good
    • 0

例、のようにしたいならCSV形式のテキストを作れば良いです。


項目の区切り記号をコンマ(,)やスペースで右(桁方向)に
改行(レコード)で下(行移動)という風に作成します。
CSVファイルを開く時に区切り記号の選択をして開くと
連続的に入力されます。
あとは表を編集して体裁を整えればいいです。
    • good
    • 0

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