エクセルの「文字列結合」で文章を合成する
「パターン」を使って文章を生成するには、エディタやエクセルで「置換機能」を使う方法があります。
置換の他にも、エクセルでは「文字列結合」という方法が使えます。
文字列結合には、式の中で
&
を使います。
=A1&B1 という式を書けば、セルA1とセルB1の内容が結合されます。
=A1+B1 は算術計算式で、数値の和を計算します。それとは別です。
セル同士の結合には、「&」でつなげるだけです。
文字列を直接、式の中で使いたい場合は、""で囲めばOKです。
A1に「茨城」、B1に「水戸」という文字が入っていたとします。
=A1&"県の県庁所在地は"&B1&"です。"
↓
茨城県の県庁所在地は水戸です。
というように使えます。
もちろん式に直接文字を入れずに別のセルに文字列を準備して、それらを結合してもOKです。
別のエントリに投稿した、特定保健用食品の規格表示を例にとって説明します。
A15のセルに、次の式を入力します
=A$3&A$4&"の"&B$3&"である"&B4&"の"&C$3&"は、「"&C4&"」です。"&D$3&"として、「"&D$4&"」とする必要があります。また、"&E$3&"としては、「"&E$4&"」と表示する必要があります。"
すると、次の結合文字列が得られます。
区分I(食物繊維)の関与成分である難消化性デキストリン(食物繊維として)の一日摂取目安量は、「3g~8g」です。表示できる保健の用途として、「○○(関与成分)が含まれているのでおなかの調子を整えます。」とする必要があります。また、摂取上の注意事項としては、「摂り過ぎあるいは体質・体調によりおなかがゆるくなることがあります。多量摂取により疾病が治癒したり、より健康が増進するものではありません。他の食品からの摂取量を考えて適量を摂取して下さい。」と表示する必要があります。
セルA15の式を、A16にコピーすると、次の結果が得られます。
区分I(食物繊維)の関与成分であるポリデキストロース(食物繊維として)の一日摂取目安量は、「7g~8g」です。表示できる保健の用途として、「○○(関与成分)が含まれているのでおなかの調子を整えます。」とする必要があります。また、摂取上の注意事項としては、「摂り過ぎあるいは体質・体調によりおなかがゆるくなることがあります。多量摂取により疾病が治癒したり、より健康が増進するものではありません。他の食品からの摂取量を考えて適量を摂取して下さい。」と表示する必要があります。
ポリデキストロース(食物繊維として)
7g~8g
の部分だけが変わりました。
これは、相対参照と絶対参照を使うことで、実現しています。
B4 列で相対参照、行で相対参照
C$3 列で相対参照、行で絶対参照
コピーした式を違う位置のセルに貼り付ける時、参照先の位置をコントロールする機能です。
詳しくはエクセルの参考書を見てください。
表の行が変わるたびに内容が変わるデータと、変わらない共通データをうまく扱うことによって
簡単なコピーワークで、文章が量産できるわけです。
この例では、区分II(オリゴ糖)のところで「区分」「第3欄」「第4欄」の絶対参照式を調整しました。
以下が、生成された9個の文章です。
区分I(食物繊維)の関与成分である難消化性デキストリン(食物繊維として)の一日摂取目安量は、「3g~8g」です。表示できる保健の用途として、「○○(関与成分)が含まれているのでおなかの調子を整えます。」とする必要があります。また、摂取上の注意事項としては、「摂り過ぎあるいは体質・体調によりおなかがゆるくなることがあります。多量摂取により疾病が治癒したり、より健康が増進するものではありません。他の食品からの摂取量を考えて適量を摂取して下さい。」と表示する必要があります。
区分I(食物繊維)の関与成分であるポリデキストロース(食物繊維として)の一日摂取目安量は、「7g~8g」です。表示できる保健の用途として、「○○(関与成分)が含まれているのでおなかの調子を整えます。」とする必要があります。また、摂取上の注意事項としては、「摂り過ぎあるいは体質・体調によりおなかがゆるくなることがあります。多量摂取により疾病が治癒したり、より健康が増進するものではありません。他の食品からの摂取量を考えて適量を摂取して下さい。」と表示する必要があります。
区分I(食物繊維)の関与成分であるグアーガム分解物(食物繊維として)の一日摂取目安量は、「5g~12g」です。表示できる保健の用途として、「○○(関与成分)が含まれているのでおなかの調子を整えます。」とする必要があります。また、摂取上の注意事項としては、「摂り過ぎあるいは体質・体調によりおなかがゆるくなることがあります。多量摂取により疾病が治癒したり、より健康が増進するものではありません。他の食品からの摂取量を考えて適量を摂取して下さい。」と表示する必要があります。
区分II(オリゴ糖)の関与成分である大豆オリゴ糖の一日摂取目安量は、「2g~6g」です。表示できる保健の用途として、「○○(関与成分)が含まれておりビフィズス菌を増やして腸内の環境を良好に保つので、おなかの調子を整えます。」とする必要があります。また、摂取上の注意事項としては、「摂り過ぎあるいは体質・体調によりおなかがゆるくなることがあります。多量摂取により疾病が治癒したり、より健康が増進するものではありません。他の食品からの摂取量を考えて適量を摂取して下さい。」と表示する必要があります。
区分II(オリゴ糖)の関与成分であるフラクトオリゴ糖の一日摂取目安量は、「3g~8g」です。表示できる保健の用途として、「○○(関与成分)が含まれておりビフィズス菌を増やして腸内の環境を良好に保つので、おなかの調子を整えます。」とする必要があります。また、摂取上の注意事項としては、「摂り過ぎあるいは体質・体調によりおなかがゆるくなることがあります。多量摂取により疾病が治癒したり、より健康が増進するものではありません。他の食品からの摂取量を考えて適量を摂取して下さい。」と表示する必要があります。
区分II(オリゴ糖)の関与成分である乳果オリゴ糖の一日摂取目安量は、「2g~8g」です。表示できる保健の用途として、「○○(関与成分)が含まれておりビフィズス菌を増やして腸内の環境を良好に保つので、おなかの調子を整えます。」とする必要があります。また、摂取上の注意事項としては、「摂り過ぎあるいは体質・体調によりおなかがゆるくなることがあります。多量摂取により疾病が治癒したり、より健康が増進するものではありません。他の食品からの摂取量を考えて適量を摂取して下さい。」と表示する必要があります。
区分II(オリゴ糖)の関与成分であるガラクトオリゴ糖の一日摂取目安量は、「2g~5g」です。表示できる保健の用途として、「○○(関与成分)が含まれておりビフィズス菌を増やして腸内の環境を良好に保つので、おなかの調子を整えます。」とする必要があります。また、摂取上の注意事項としては、「摂り過ぎあるいは体質・体調によりおなかがゆるくなることがあります。多量摂取により疾病が治癒したり、より健康が増進するものではありません。他の食品からの摂取量を考えて適量を摂取して下さい。」と表示する必要があります。
区分II(オリゴ糖)の関与成分であるキシロオリゴ糖の一日摂取目安量は、「1g~3g」です。表示できる保健の用途として、「○○(関与成分)が含まれておりビフィズス菌を増やして腸内の環境を良好に保つので、おなかの調子を整えます。」とする必要があります。また、摂取上の注意事項としては、「摂り過ぎあるいは体質・体調によりおなかがゆるくなることがあります。多量摂取により疾病が治癒したり、より健康が増進するものではありません。他の食品からの摂取量を考えて適量を摂取して下さい。」と表示する必要があります。
区分II(オリゴ糖)の関与成分であるイソマルトオリゴ糖の一日摂取目安量は、「10g」です。表示できる保健の用途として、「○○(関与成分)が含まれておりビフィズス菌を増やして腸内の環境を良好に保つので、おなかの調子を整えます。」とする必要があります。また、摂取上の注意事項としては、「摂り過ぎあるいは体質・体調によりおなかがゆるくなることがあります。多量摂取により疾病が治癒したり、より健康が増進するものではありません。他の食品からの摂取量を考えて適量を摂取して下さい。」と表示する必要があります。