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

CSV取込により、添付画像のフォーマットに値で貼り付けし、昇順に並び変え、
印刷が出来るマクロが出来ないか考えていますが、何から手をつけていいのか分からない
ため、詳しい方ご教授お願いします。

■したいこと
(1)CSVを取込し、値で添付のようなフォーマットに貼り付けしたい
 6行目でいうと、CSVのそれぞれの以下のセルの値がエクセル表の以下のセルに
 値で貼り付くようになります。
 ※エクセル表は5行目がタイトル行になります。
 ※コピー後の貼り付けは値で貼りつけしたい
     
エクセル表 B6 C6 D6 E6 F6 G6
 CSV   A2 B2 E2 F2 I2 L2

(2)昇順に並び変えをしたい
 G列は数字になりますので、昇順で並び変えをしたい

(3)値が入っている範囲で印刷をしたい。
 CSV取込によりセットした値の印刷範囲で自動で印刷するようにしたいです。

すみませんが、宜しくお願いします。

「【詳しい方HELP】CSV取込、並び変え」の質問画像

A 回答 (2件)

(1)CSVを取込し、値で添付のようなフォーマットに貼り付けしたい


 6行目でいうと、CSVのそれぞれの以下のセルの値がエクセル表の以下のセルに
 値で貼り付くようになります。
 ※エクセル表は5行目がタイトル行になります。
 ※コピー後の貼り付けは値で貼りつけしたい
 
エクセルには、CSVのファイルのデータ接続という機能があります。
データ=>テキストファイル=>ファイル =>取り込み先のセルなどを設定すると
次回からは、更新を行うだけになります。
カットと貼り付けという発想から離れましょう。
    
エクセル表 B6 C6 D6 E6 F6 G6
 CSV   A2 B2 E2 F2 I2 L2
縦横入れ替えの貼り付けですよね。先に説明した方法で別のシートへデータの取り込み
印刷したいシートへ縦横入れ替えで貼り付け、或いは関数を配置

(2)昇順に並び変えをしたい
 G列は数字になりますので、昇順で並び変えをしたい
関数を使った場合は、一度、値に入れ替えて
エクセルの並び替えを実行

(3)値が入っている範囲で印刷をしたい。
 CSV取込によりセットした値の印刷範囲で自動で印刷するようにしたいです。
表では罫線があるので、データが入っているセルに罫線が入るように設定すれば
如何でしょうか。
勝手に、必要な部分だけが印刷されると思います。

上記の事が手動で出来るようになったら、マクロの記録で一気にマクロ化してください。
VBにこだわる前に、エクセルの機能を全面的に使いこなす事が簡単です。
    • good
    • 0

CSVにどのようなデータがどのようなフォーマットで保存されているのか不明ですし、そもそもCSVデータは値しかありませんから、値以外の情報を貼り付けることはできません。



> 印刷が出来るマクロが出来ないか考えていますが、何から手をつけていいのか分からない

とりあえず、以下のことをマクロの記録で記録してマクロのもとを作成してください。

CSVファイルをエクセルで開く
必要な部分をエクセルの表に貼り付ける
昇順に並び替える
印刷範囲を指定して印刷する

ちなみに範囲指定の最終行が毎回変わる場合(たとえば印刷範囲がA1からB列の不定行の場合)

PageSetup.PrintArea = "A1:B" & Range("B" & Rows.Count).End(xlUp).Row

としておくことでB列の最終行までが対象となります。
    • good
    • 0

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