質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

Q&A

解決済

3回答

1096閲覧

lookup関数を使用する際に特殊な機能を持つ記号(エスケープ文字)の一覧を知りたいです

begginer_class

総合スコア14

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

0グッド

0クリップ

投稿2020/10/27 05:40

編集2020/10/27 06:35

表題の件について、
" * ~ / = - のような、文字列ではないとみなされてしまう特殊記号を知りたいです。
"="は"=="と続けて、はじめて文字列としての"="になると言うようなものです。

普段、上記であげたような記号でエスケープ文字になってしまっていることに気づくのが遅れて躓いてしまうことが多いため、予め知っておきたいと思いました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

VB.NETにlookup関数などというものはありません。
文字列表現に関しては、気を付けるのはせいぜいダブルクォーテーションを文字列に入れる時に二連続にするくらいです。
"A""BC" は、A"BC という文字列になります。
Char1文字を表現する時は "A"c のように、末尾にCを付けます。
他は、改行文字や特殊なコードを表現する定数が用意されています。

文字列にエスケープ文字を埋め込むには?[C#/VB/WPF]

また、補間文字列 という機能があります。
先頭に $ を付けた文字列の中に、中括弧で囲んだ変数の値を埋め込む事ができます。

vbnet

1 Dim value = 100 2 Dim str = $"value={value}" 'strは "value=100" となる

投稿2020/10/27 06:48

編集2020/10/27 06:54
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

begginer_class

2020/10/27 06:57

回答とURLまでありがとうございます。 参考にさせていただきます。 .Netにlookup関数がないとのご指摘ですが、初学者で勘違いしておりました。ありがとうございます。
guest

0

VBAのコード中に記述する文字列リテラルのことでしょうか。

だとしたら認識がかなり間違っているような。

まずVBAコード中に文字列を記述するときは " 引用符で囲めば文字列として扱われます。文字列リテラルといいます。
* ~ / = -というような記号でも問題なく文字列になります。

vba

1Dim str As String 2str = "* ~ / = -"

ただし、 " だけは文字列リテラル内では "" とする必要があります。

vba

1Dim str As String 2str = "abc""def"

普段、上記であげたような記号でエスケープ文字になってしまっていることに気づくのが遅れて躓いてしまうことが多いため、

文字列リテラルの話とは違うようですね。
その躓いたときの具体的なコードを提示してもらえますか。

投稿2020/10/27 06:25

hatena19

総合スコア34075

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

begginer_class

2020/10/27 06:36

ありがとうございます。 >その躓いたときの具体的なコードを提示してもらえますか。 今現在躓いているわけではないので具体的に示すものがなく申し訳ないのですが、VBAではなくVB.Netになります。(VBAとVB.Netはまったくの別物なのでしょうか?) タグを間違えておりました。申し訳ございません。
hatena19

2020/10/27 06:47

VB.Net? タイトルが「lookup関数を使用する際に・・・・」に変更されてますが、VB.Netにlookup関数なんてありましたっけ(VB.Netに関してはあまり詳してくないので知らないだけかも)。 VBAとVB.Netは別物ですが、文字列リテラルに関してはほぼ同じだと思います。
guest

0

"="は"=="と続けて、はじめて文字列としての"="になると言うようなものです。

これは、エクセルのセルに「値」を入れるときの話ですか?
であればVBAとは直接関係ないですね。
エクセルの使い方の話だと思います。
あとは、ファイル名に使えない文字はWindowsの話でしょうし、
シート名で使えない文字はエクセルの話でしょうし、
ダブルクォーテーション以外は、特になにかないとは思いますが。。。

ExcelVBA

1Sub test() 2 MsgBox "* ~ / = -" 3End Sub

ちなみに、エクセルのセルに、数式と読める文字列を文字列として入れたいときは、
頭に「'(シングルクォーテーション)」を付けるか、
事前にセルの書式設定で文字列に設定しておいてから
入力します。

ExcelVBA

1Sub test2() 2 Range("A1").Value = "'=" 3 Range("A2").Value = "'-1*1" 4End Sub

あと、特殊なのは、検索時や、Like演算子で使う「ワイルドカード」でしょうか?
調べてみてください。

知っておくのも結構ですが、
躓いたときに調べられるようになっておくほうがより有用かと思います。

投稿2020/10/27 06:14

mattuwan

総合スコア2163

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

begginer_class

2020/10/27 06:21

ありがとうございます。 具体的に書いていませんでしたが、lookup関数を使用するときになります。 *⇒これをワイルドカードと呼ぶのだと思っていましたが、エスケープ文字などの特殊機能を持つ記号の総称がワイルドカードなのでしょうか? 少し本件の質問とずれてしまいすみません。
mattuwan

2020/10/27 08:00

用語はネットで検索してみてもらえませんか? エクセルvbaの話なら付き合います。そうでないなら、門外漢なので。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問