結構、複雑な作業をExcel(マクロ)でやりたいです。
WordPressで、5000以上の駅に関する記事をインポートしてアップしようとしています。
Really Simple CSV Importerというプラグインを使うため、そのcsvファイルも完成しています。
そのcsvには、
C列に、記事タイトル(駅名が含まれている)が書かれていて、
D列に、記事内容が書かれています。
そのD列の記事内容のアコーディオンタグの中に、
別に用意した文章を差し込んでいくようにしたいです。
※アコーディオンタグ
<details>
<summary>〇〇</summary>
~ここに文章を差し込んでいく~
</details>"
差し込んでいく文章は別のExcelにまとめていて、記事毎に違います。
別のExcelのA列に駅名が書かれていて、
X列にアコーディオンタグの中に差し込む文章があります。
csvのC列と別のExcelのA列を参照して、
アコーディオンタグの中にその駅記事のX列の文章を差し込むようにできるでしょうか?
もしかしたら、別のExcel内にかぶるセルが複数あるかもしれません。
そのため一旦、csvのJ列に別のExcelのA列を、K列に文章を表示。
そこから数式で、アコーディオンタグの中に差し込む。
という流れなのかなと思いました。
まとめると、
csvの記事タイトル内の駅名が一致する記事内のアコーディオンタグに、
別のExcelの文章を差し込みたいということです。
csvとExcelと分かれていたり、文章になっている記事タイトルの中から参照したり、
いろいろ複雑な感じなのですが、このようなことはできますでしょうか?
Excel2016です。
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
こんばんは
状況がよくわかりませんけれど・・
>そのcsvファイルも完成しています。
雰囲気からすると、こちらのCSVはテンプレートと考えれば、変わらないもののように思われます。
もしそうであるなら、差し込むデータもCSVにしておいて、表示の際に差し込み処理を行うようにしてしまえば、ご質問の作業そのものが不要になるのではないかと思います。
差し込み用のデータのみをメンテして、CSVでアップすれば良いというイメージですね。
5000件とのことなので、若干ながらサーバー(あるいはスクリプトでやるならブラウザ)の負荷がかかりますけれど、多くの定型の表などに、日々可変の情報を織り込むようなサイトで使われている手法です。
ニュースサイトの記事とかブログの最近の記事一覧とか・・
>アコーディオンタグの中にその駅記事のX列の文章を差し込むようにできるでしょうか?
エクセル上で編集なさりたいのなら可能でしょう。
元のCSVをエクセルに読み込んで、別ブックから検索して文字列編集で埋め込めば良いです。
実際の状態がハッキリしないので、以下は要領のみの例となりますが・・
例えば、空き列の1行目に
=IFERROR(LEFT(D1,FIND("</summary>",D1)+9)&INDEX(別ブックのX列,AGGREGATE(15,6,ROW(A$1:A$100)/(COUNTIF(C1,"*"& 別ブックのA$1:A$100 &"*")>0),1))&"</details>",D1)
のような関数式を入れて下方にフィルコピーすれば、この列に編集後のHTMLが表示されます。
その列をカットして、「値をペースト」でD列に戻してあげれば編集後の固定文字列になるでしょう。
質問者様が、この作業をマクロ化できるのなら、マクロで行うことも可能です。
こちらであれば、ボタンを押すなどであとは自動化が可能ですね。
No.1
- 回答日時:
ごめんなさい。
ひょっとすると手作業でやったほうが早いと思うというアドバイスです。
今回だけの作業のためにマクロを作るには対象の数が少なすぎると思うんだ。
これが100万行のデータで対象のシートも1000ほどあるという事なら考えものですが、5000件ほどのデータですので一つずつ手作業で処理することを勧めます。
自分なら作業用の列や行を追加して、データをまとめて加工しながら処理するという方法を採用しますけどね。
これならマクロの動作確認をしながらコードを並べるより早く終わります。
動作確認しながらマクロを作ると……マクロできた♪でも処理終わってる;;ってことになる。
そしてここは「代わりにマクロを作ってください」と【作業委託】する場所ではなく、
自力で問題を解決で起用になるための【アドバイス】をもらう場所です。
(`・ω・´) マクロを自分で作るんだよ。
ということで、マクロで処理をしたいという事であれば、その処理を行うにあたって具体的にどんなことが分からないのかを書いて自力で解決できるようになるためのアドバイスをもらうようにしましょう。
・・・
質問者さん的には
「答え(マクロ)を投稿できないなら黙ってろ」
って思うでしょうが、残念ながらここはそういう場所なんです。
まあ、たまに勘違いしている「俺はこの程度は朝飯前だぜ!」って人がコードを書いてくれることもありますけどね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 文章内の指定した位置にセル内を差し込む 1 2023/06/28 19:56
- Excel(エクセル) PowerQueryに詳しい方教えてください(Office365) 1 2022/07/24 21:11
- Excel(エクセル) csvファイルをExcel形式で読み込むには 2 2023/07/03 13:09
- Visual Basic(VBA) VBAで特定の場所にあるCSVファイル(複数)から特定場所を抜き出してExcelに転記したいです。 11 2023/05/23 16:29
- Excel(エクセル) セルを参照して条件で値をコピーする 3 2023/02/08 17:45
- Visual Basic(VBA) エクセルVBA 4 2022/05/14 00:51
- Visual Basic(VBA) エクセルVBAについて 8 2022/07/13 22:41
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- Access(アクセス) CSVファイルの「0落ち」にVBA 6 2023/02/02 15:27
- Visual Basic(VBA) tatsumaru77様 昨日回答して頂いたものです。 すみませんが、昨日の質問で1つ補足があります 1 2022/05/15 15:06
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~12/2】 国民的アニメ『サザエさん』が打ち切りになった理由を教えてください
- ・ちょっと先の未来クイズ第5問
- ・【お題】ヒーローの謝罪会見
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「段」と「行」の違いがよくわ...
-
エクセルで離れた列を選択して...
-
LEFT関数とIF関数の組み合わせ...
-
VLOOKUPの列番号の最大は?
-
列方向、行方向の定義
-
土日の列幅の自動変更を教えて...
-
エクセルのソートで、数字より...
-
エクセルマクロの組み方
-
エクセル マクロ 範囲指定で...
-
Excel文字列一括変換
-
csvに別のExcelの文章を差し込む
-
VBAで別ブックの列を検索し、該...
-
Excelの行数、列数を増やしたい...
-
Excelで英語表示された日時の変換
-
VBA 指定した列にある日時デー...
-
最終行に合計(最終行が列によ...
-
VBAで重複データを合算したい(...
-
リストからデータを紐付けしたい
-
VBA 選択範囲とUnionの使い方に...
-
CSVファイルの「0落ち」にVBA
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「段」と「行」の違いがよくわ...
-
エクセルで離れた列を選択して...
-
VLOOKUPの列番号の最大は?
-
LEFT関数とIF関数の組み合わせ...
-
列方向、行方向の定義
-
VBA 指定した列にある日時デー...
-
Excelの行数、列数を増やしたい...
-
エクセル マクロ 範囲指定で...
-
エクセルで最初の行や列を開け...
-
エクセルのソートで、数字より...
-
エクセルマクロの組み方
-
エクセルで複数列の検索をマク...
-
データシートビューのタイトル...
-
Excel文字列一括変換
-
VBAで結合セルを転記する法を教...
-
エクセルマクロPrivate Subを複...
-
リストからデータを紐付けしたい
-
CSVファイルの「0落ち」にVBA
-
エクセル 重複 隣の列 一番...
-
横軸を日付・時間とするグラフ化
おすすめ情報