340

Excel 数式で次の文字列を作成するにはどうすればよいですか。

モーリス・"ザ・ロケット"・リチャード

一重引用符を使用している場合、それは些細なことです"Maurice 'The Rocket' Richard"が、二重引用符はどうですか?

4

12 に答える 12

503

追加の二重引用符でエスケープしようとしましたか? 文字をエスケープすることで、" 文字をリテラル テキストとして扱うように Excel に指示します。

= "Maurice ""The Rocket"" Richard"
于 2008-10-19T16:33:40.843 に答える
171

CHARまたは、次の関数を使用できます。

= "Maurice " & CHAR(34) & "Rocket" & CHAR(34) & " Richard"
于 2008-10-20T13:41:42.500 に答える
23

3 つの二重引用符: " " " x " " "= "x"Excel は自動的に 1 つの二重引用符に変更されます。例えば:

=CONCATENATE("""x"""," hi")  

= "x" こんにちは

于 2012-10-04T23:41:37.430 に答える
7

JSON でこれを行う必要がある場合:

=CONCATENATE("'{""service"": { ""field"": "&A2&"}}'")
于 2014-08-13T16:46:39.713 に答える
7

これには関数を使用します (ワークブックに既に VBA がある場合)。

Function Quote(inputText As String) As String
  Quote = Chr(34) & inputText & Chr(34)
End Function

これは、Sue Mosher の本「Microsoft Outlook Programming」からのものです。次に、式は次のようになります。

="Maurice "&Quote("Rocket")&" Richard"

これはDave DuPlantisが投稿したものと似ています。

于 2012-06-21T12:29:00.193 に答える
4

chr(34) コードを使用:

    Joe = "Hi there, " & Chr(34) & "Joe" & Chr(34)
    ActiveCell.Value = Joe

結果:

    Hi there, "joe"
于 2015-07-31T13:32:36.970 に答える
2

"別のセルとして連結します。

    A |   B   | C | D
1   " | text  | " | =CONCATENATE(A1; B1; C1);

D1 displays "text"
于 2017-05-18T09:26:45.793 に答える
1

これはマクロを使用して機能する.Formula = "=THEFORMULAFUNCTION("STUFF")" ので、次のようになります。これは、マクロを使用して機能しますか.Formula = "=THEFORMULAFUNCTION(CHAR(34) & STUFF & CHAR(34))"

于 2010-08-17T14:22:16.877 に答える
1

空または長さゼロの文字列 (例: "") を返してセルが空白に見えるようにすることは、ワークシートの数式では一般的な方法ですが、VBA でRange.FormulaまたはRange.FormulaR1C1プロパティを介して数式を挿入するときにそのオプションを再作成することは、引用符で囲まれた文字列内の二重引用符文字を二重にする必要があります。

ワークシートのネイティブTEXT 関数は、引用符を使用せずに同じ結果を生成できます。

'formula to insert into C1 - =IF(A1<>"", B1, "")
range("C1").formula = "=IF(A1<>"""", B1, """")"         '<~quote chars doubled up
range("C1").formula = "=IF(A1<>TEXT(,), B1, TEXT(,))"   '<~with TEXT(,) instead

私の目にはTEXT(,)、代わりに使用すると""、上記のような単純な式でもクリーンアップされます. 空の文字列をVLOOKUPに追加して、ルックアップの結果が空白になったときにセルにゼロを返すことを回避したり、IFERRORで一致しない場合に空の文字列を返すことを避けるなど、より複雑な数式で使用すると、利点がますます重要になります。

'formula to insert into D1 - =IFERROR(VLOOKUP(A1, B:C, 2, FALSE)&"", "")
range("D1").formula = "=IFERROR(VLOOKUP(A1, B:C, 2, FALSE)&"""", """")"
range("D1").formula = "=IFERROR(VLOOKUP(A1, B:C, 2, FALSE)&TEXT(,), TEXT(,))"

空の文字列を提供する古い方法をTEXT(,)置き換えること""で、数式文字列に適切な数の引用文字があるかどうかを判断するためにそろばんを使用するのをやめるかもしれません。

于 2016-03-23T04:41:30.177 に答える
0

VBA 関数

1) .Formula = "=""THEFORMULAFUNCTION ""&(CHAR(34) & ""STUFF"" & CHAR(34))"

2) .Formula = "THEFORMULAFUNCTION ""STUFF"""

最初の方法は、vba を使用してセルに数式を書き込み、計算値を返します。

 THEFORMULAFUNCTION "STUFF"

2 番目の方法では、vba を使用してセルに文字列を書き込み、結果として値が得られます。

 THEFORMULAFUNCTION "STUFF"

Excelの結果/式

1) ="THEFORMULAFUNCTION "&(CHAR(34) & "STUFF" & CHAR(34))

2) THEFORMULAUNCTION "STUFF"

于 2013-02-13T17:58:08.693 に答える