Excelマクロ・VBA達人養成塾 小川です。
「ダブルクオーテーションマーク」という記号があります。
これ↓です。
"
エクセルVBAでは、プログラム内で文字列を表記するとき、この記号ではさむという約束になっています。
例: “こんにちは” → 文字列の「こんにちは」という意味
例: “山田商会” → 文字列の「山田商会」という意味
例: “Lotus123” → 文字列の「Lotus123」という意味(数字を含む場合も文字列です)
例: “%365” → 文字列の「%365」という意味(記号を含む場合も文字列です)
ということで。以下の各行では、実際にセルに値を入れています。
Sub Renshu1() Range("A1").Value = "こんにちは" '↑セルA1に「こんにちは」と記入します。 Range("A2").Value = "山田商会" '↑セルA1に「山田商会」と記入します。 Range("A3").Value = "Lotus123" '↑セルA1に「Lotus123」と記入します。 Range("A4").Value = "%365" '↑セルA1に「%365」と記入します。 End Sub
ここで。
セルに「 ” 」という記号を記入するマクロを作りたいといったときは、どうしたらいいのか?
という疑問が出てきます。
先に結論を書くと、
そういうときは、「 ” 」記号を重ねて表記するとOKです。
例えば、こんな感じ。
Sub Renshu2() Range("B1").Value = """" '↑セルB1に「"」と記入します。 Range("B2").Value = """""" '↑セルB2に「""」と記入します。 Range("B3").Value = """こんにちは""" '↑セルB3に「"こんにちは"」と記入します。 End Sub
「知らなかったんですが、教えてもらって分かりました」という話をよく聞くんですが。
こんなん、試せば分かりそうなもんです。
「 ” 」と表記したければ、まずはダメモトでこんなん↓書いてみてください。
Range("C1").Value = """
↑ダブルクオートが3つです。
改行した瞬間、こうなるでしょう↓。
Range("C1").Value = """"
↑ダブルクオートが4つになりました。
「?」と思いつつ、このマクロを実行してみます。
すると、セルC1に「 ” 」と記入されます。
それから、もう一度、以下のマクロをじっーと見てみてください。
Range("C1").Value = """"
それで、さらに、「= “”””」の部分のダブルクオートの数を5個にしたり6個にしたりして、試してみてください。
そのうち仮説を立てられるでしょう。
こういうことを自分で調べようとしない人は、いつまでたっても「ローマの乳牛」ならぬ「パソコンスクールの乳牛」みたいなものです。
いつも書いていますが、ITの勉強は、理系科目の勉強です。理系科目の勉強では、仮説を立てること、実験することなしに上達はありません。
達人になりたければ、自主的に計画して実験する精神を持ちましょう。
お知らせというか、打診です。
ひさしぶりに、以下のセミナーやろうかと検討中です。
どれかに、ご興味おありの方、どのくらいいらっしゃいますかね。
イヤでもWindows操作とExcel操作が早くなるワークショップ
http://www.exvba.com/closed/moushikomi_winxls.php
親指シフト達人養成塾
http://www.exvba.com/oyayu/index.php
Excelデータ分析7つの上級技
http://www.exvba.com/exbunseki/index.php
今のところ実施予定日は、僕の中では以下の感じ:
イヤでもWindows操作とExcel操作が早くなるワークショップ
東京9月29日
親指シフト達人養成塾
東京9月30日、大阪11月10日
Excelデータ分析7つの上級技
東京9月30日、大阪11月10日