• ベストアンサー

VBAで「"」の代入の仕方

教えてください。 ある特定のセルに「abc"def」というような文字列を入力したいのですが VBAでどう書けばよいのでしょうか? 仮にA1のセルに入れようとした場合・・・ Cells(1, 1).Value = abc"def や Cells(1, 1).Value = "abc"def" ではエラーですよね。 すごく初歩的ですみませんが教えてください。 過去ログも見たのですが無いようでした。しかし、検索で過去ログにあるのを見つけた方は 差し支えなければ、検索時に指定した文字を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • tailkuppa
  • ベストアンサー率53% (52/98)
回答No.1

"" のように2つ重ねたら行けたような気がしますけど...

sheeps
質問者

お礼

速攻の回答有難うございます。 いやぁやっぱり素人がネット探すよりも 有識者に教えていただくのが早いですねぇ。

関連するQ&A

  • VBAの記述の仕方で

    エクセルのVBAで、A1に Range("B1").Select という文字列を入力させたいのですが、以下の記述だといずれもエラーになってしまいます。 Cells(1, 1).Value = Range("B1").Select   Cells(1, 1).Value = "Range("B1").Select"   どこをどう直せばいいのでしょう?

  • Val関数をVBAで使うには?

    助けてください VBA初心者です Excel VBAでA列の4からj行目までの文字列(例:"12345678” 8桁固定)、k行目までの数字以外の文字列(例:AB12345678 9桁以上ある)のうち、j行目までの文字列をVal関数で数値に変換したいのですが、どうやっていいのか分かりません j+1行目からk行目までは数字以外の文字列が入っています 1セルだけの変換はできます(例:A4セルに"12345678”がある場合、Val(range("A4"))で12345678が出ます) ※仮にj=98と固定しました Sub Value_num() J = 98 'A列を値→数字に変換 Columns("A").Select 'Range("A4").Value = val(Range("A4")) これは動く Range(Cells(4, 1), Cells(J , 1)).Value = val(Range(Cells(4, 1), Cells(J, 1))) 'これが動かない End Sub

  • VBAでセルデータの転記(文字列)

    VBAでセルのデータを下記のように他のセルに持っていく場合、文字として入れてある数字(例えば先頭に0がつくようなもの)は、自動的に数値に変えられて0が消えてしまいます。 また、長いものは指数表示になってしまい、15桁を超えるものは後ろが0になってしまいます。 持っていく先のセルを文字列に設定しておけばいいのでしょうが、持っていく元データが全て文字列ではなく、数値の場合もあります。 元データが数値であれば数値として、文字列であれば文字列として持っていくにはどうすればいいのでしょうか? Sub test() Cells(3, 3).Value = Cells(1, 1).Value End Sub

  • エクセル2000のVBAのcutメゾット

    エクセル2000でセルを他のセルの文字から検索し検索されたセルを特定の場所にコピーし貼り付けるのを空欄になるまで繰り返すVBAを作りました。 Dim a As Range Dim b As Long b = 1 Do Until Cells(2 + b, 5).Value = "" Cells(2 + b, 5).Select Set a = Range("B:B").Find(what:=Cells(2 + b, 5).Value) a.Select Selection.Copy Cells(2 + b, 8).PasteSpecial xlAll Cells(2 + b, 5).Select b = b + 1 Loop なんですが、これだとちゃんと起動するのに「copy」を「cut」に変更したら、「pastespecial」でデバックが発生し止まってしまいます。 どちらかというと、コピーより切り取りして貼り付けたい(んで、残ったセルを検索しメッセージボックスで表示出せたい)のですが、このVBAだとcutメゾットは使えないのでしょうか? また使えるのならば「pastespecial」でなければ、何を使って貼り付ければよいのでしょうか?

  • Excel VBA 列の最後の値を代入

    たびたびすみません。 指定したセルの、最終列の値を、任意のセルに入れたいのですが、 オブジェクトが必要です、というエラーがでます。 Sub 単価代入() Dim i As Integer Application.ScreenUpdating = False For i = Range("IV2").End(xlToLeft).Column To 1 Step -1 If InStr(Cells(2, i).Value, "単価") > 0 Then Cells(3, i).Value = Cells(3, i).End(xlToRight).Column.Value End If Next i Application.ScreenUpdating = True End Sub Cells(3, i).Value = のあとの指定方法がまずいのかと思いますが。。 どうぞ宜しくお願い致します。

  • エクセルVBAで該当するセルに色をつけたい

    ご覧いただき、ありがとうございます。 当方、VBA初心者です。 エクセルVBAで、「対象の社名」に該当するセルに色をつけたいと思っています。 それぞれ別シートになります。 たとえば、abc(株)が対象なら、 1.(株)は(株)や株式会社など表記がバラバラなので取る⇒abcの文字列が検索対象 2.「検索シート」にあるabcを検索 3.対象のセルに色をつける 4.文字列がある限り(この場合は○がついている部分はずっと)検索続ける ※○の数式はつけた方が探しやすいと思って作ったので、なくても構いません わかりづらい文章ですみません。 ぜひお知恵を貸してください><

  • VBA Select Caseについて

    エクセルVBAでLike演算子とSelectCase構文を組み合わせたいのですが、以下ではエラーになってしまいます。 どう修正すればいいのでしょうか? ABCを含む文字列、DEFを含む文字列、その他、についての処理の分岐方法です。 Private Sub Worksheet_Change(ByVal Target As Range) Select Case Target.Value Case Like "*ABC*" `処理A Case Like "*DEF*" `処理B Case Else `処理C End Select End Sub

  • HTMLについて

    HTMLについて分からない事がありますので、ご教授願います。 <INPUT TYPE=TEXT NAME=TEST VALUE="abc"def"> 上記のように、テキストボックスに「abc"edf」を初期表示させる1文を書きました。 しかし、「abc」しかテキストボックスには初期表示されません。 原因は「abc」の次にある「"」がVALUEに代入する文字列の最後とみなされている ためなのですが、文字列中の「"」を文字として認識させて「abc"def」と初期表示 させたいのですが、何か良い方法はないでしょうか? 実は、powerscriptでプログラミングをしています。 そのため、VALUEに指定する文字列は変数を指定していますので、 「VALUE=''」にしてもその変数に「'」が入力されていたら同じ現象が生じてしまいます。 なんとか、「"」を文字として認識させる方法はないのでしょうか?

  • VBA 文字列→検索→置き換え

    Excel 2007です。 VBAで、特定のレンジのセルから、特定のセルに入った文字列を検索して削除するにはどうしたらよいでしょうか? 具体的にはB2:B100の中にあるA1セル内の文字列を削除する。といった感じです。 よろしくお願い致します。

  • ECXEL VBA - ワイルドカード

    Valueの指定にワイルドカードを使いたいのですが *でくくってもうまく行きません。 ちなみに下記のコードは A列のセルに「abc」と言う文字が含まれていればその行を削除する という処理をしているつもりなのですが おかしい所があれば、ご指摘お願いします。 For i = 2 To Range("A3").CurrentRegion.Rows.Count If Cells(i, 1).Value = "*abc*" Then Rows(i).Delete shift:=xlUp i = i - 1 Else i = i + 1 End If Next i よろしくお願いします。

専門家に質問してみよう