• 締切済み

VBAでセル指定するとき("A1")←半角?

VBAでセルを指定するとき、 例えばA1のセルを選択するときにRange("A1")と書きますよね。 このときに「A」は半角で入力したのですが、これは全角の「A」でもいいのでしょうか。 実際に全角にしてVBAを組んでも、問題なく処理できました。 ただ「全角にしても問題なく処理できたからいいや」というのではモヤモヤしてしまい、 全角でも問題なく処理できるという記述があるテキストやサイトを探しているのですが 見つかりません。 セル指定するときに全角、半角は関係ないのでしょうか。

みんなの回答

  • FEX2053
  • ベストアンサー率37% (7987/21354)
回答No.2

全角では動作しない筈なんですけどね・・・。 全角「A1」の場合、全角で「A1」という範囲名をどこかに 決めていないとエラーします。逆に言えば、セルA1を選択する 場合は半角「A1」にしないと動作しません。 ですので、何らかの理由で「全角」がソースコード上「半角」に 読み変わってると思うんですが・・・。 あと、それ以上に「Range」でセルを指定するのではなく、可能な 限り「Cells(x,y)」で指定した方が良いですよ。Cellsで指定すると ループのサフィックスが使いやすいですから・・・。 ちなみに、Windowsでは半角の大文字と小文字は相互に読み替え が可能です。Range("a1")でもRange("A1")でも同じ結果になり ます。

全文を見る
すると、全ての回答が全文表示されます。
  • Oubli
  • ベストアンサー率31% (744/2384)
回答No.1

勝手に半角に治しているのだと思いますが、VBAのバージョンが違うとどうなるかわかりません。 外国版のVBAだと通用しないと思いますし、プログラム上の英数字は全部半角にしておいた方がよいですよ、

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • <エクセル>「Aのセルには半角カナ」、「Bのセルには全角かな」と入力指定したい

     件名について教えてください。 「条件つき書式」では全角、半角の指定までできないようです。 マスタの申請書のような頻繁に使用する入力項目が決まっている書類に対して、 毎回書式を指定するのは不便を感じているので、教えてください。  1行目 半角カナ  2行目 全角かな  3行目 半角数字  と、 カーソルをセルに合わせるとその通りに入力できるのが理想です。

  • エクセルで半角を全角に変えるマクロは?

    ワークシート関数の JIS のようにVBAで「半角英数かな」を「全角英数かな」に変換するにはどのように書けばいいでしょうか? たとえば、Dialogsheets("Dialog1")の Editboxes("ABC")に入力された半角文字をWorksheets("AAA")のセルA1に全角で出す場合です。 変換せずそのままなら Sub test() Sheets("AAA").Range("A1") = DialogSheets("Dialog1").EditBoxes("ABC").Text End Sub だというのはわかりますが。

  • セルを指定したVBA

    お願いします。 以前、このカテゴリーの質問で、特定のセルをダブルクリックすると”○”が入力されるコードがあり、重宝させてもらっています。 ただ、シート全体で適用となっているため、どのセルをWクリックしても”○”が入力されます。 特定のセルのみ適応されるような範囲指定のVBAはどのように記述したらいいのでしょうか? よろしくお願いします。

  • VBAでセル範囲条件の指定

    下記のようなことを行いたいのですが、VBAの記述でうまくいかなくて困っています。 ----------------------- もし、現在選択中のセルがA1からA5の範囲にあるならば→「実行1」を行う もし、A1からA5の範囲内にないなら「実行2」を行う ------------------------ たったのこれだけのことなのですが、「A1からA5の範囲」を指定する方法がよくわかりません。 ------------------------ Sub セル範囲判定() If ActiveCell = Range("A1:A5") Then MsgBox "A1:A5がアクティブです" Else MsgBox "A1:A5がアクティブではありません" End If End Sub ------------------------- などとしてもうまくいきません。 構文が良くわかっていないので困っています。 「アクティブセルが○○なら」という部分を教えていただけると助かります。

  • 【Excel VBA】A列の全角・半角文字をチェック

    【Excel VBA】A列の全角・半角文字をチェック Excel VBAの初心者です。 仕事で必要なため、教えていただけると助かります。 【やりたいこと】 Excel VBAで、入力が完了したExcelシートのA列(A1からA10)が、 半角のみであること、または全角が入力されていないこと、を チェックしたいです。 半角以外の文字があった場合は、メッセージを表示します。 また、半角以外のセルがあった場合は、そのセルの色を水色にします。 入力チェックの方法は、ボタンにマクロを登録して、 そのボタンを押下することで行います。 以下に、僕が試したプログラムを記します。 アドバイスをいただけると幸いです。よろしくお願いします。 Sub 入力チェック() Dim cellValue As String Dim strANSI As String Dim i As Integer For i = 0 To 10 cellValue = Cells(1, i + 1) strANSI = StrConv(cellValue, vbFromUnicode) If Len(cellValue) = LenB(strANSI) Then MsgBox "セルは半角のみ" myColor = 8 Else MsgBox "セルの内容は全角のみ" End If MsgBox "セルの内容は全角と半角があり" Next i End Sub

  • 時間をvbaでセルに1:00と入力する場合

    セルにvbaで時間として、1:00と入れたいのですが、 Range("A2") = #1:00# とすると、自動で Range("A2") = #1:00:00 AM# になってしまい、実際にセルにも「1:00:00 AM」と入力されてしまいます。 そもそもvba上で時間をコードとして打つ場合は、#で囲うでいいんですよね? 時間をvbaでセルに1:00と入力する場合は、どうすればいいですか?

  • なぜ張り付けは、「セルを指定+.Paste」ではだ

    なぜ張り付けは、「セルを指定+.Paste」ではだめなのでしょうか? VBAを勉強しているのですが セルを指定+メソッドで セルに対して動作ができると覚えていました。 例えば、 Range("A1").Copy もRange("A1")でセルを指定して、Copyメソッドを使っています。 しかし、張り付けに関しては、 Range("A1").Paste をすると、 「オブジェクトは、このプロパティまたはメソッドをサポートしていません。(Error 438)」 と言うエラーになってしまいます。 それに、 「 Range("A1")」を入力して、「.」を入力すると、ヒントが出ますが そこにCopyはあるけど、Pasteは出てきません。 Pasteは特別な扱いなのでしょうか? そもそもPasteはメソッドではないのでしょうか? ちなみに Sub test() Range("A1").Copy Range("A2").PasteSpecial End Sub なら問題なくできました。 どなたか Range("A1").Paste がエラーになる理由を教えてください。 ご回答よろしくお願いします。

  • VBAで半角にする際、特定の記号は変換したくない

    エクセルのセル内のテキストを、カナ・英字・数字を半角化するVBAを作りたいです。 過去記事 http://okwave.jp/qa/q1153932.html を参考にして一旦全てのテキストを半角化⇒特定の記号を全角化してみましたが、 これだと「… ‥ ‘ ’ “ ”」のような全角記号は、一旦半角化されてしまうと元の全角に戻せません。 何か良い方法は無いでしょうか? アドバイスお願いします。

  • 【エクセル】指定のセルで全角/半角の切り替え

    Excel2000で、ある表を作成しています。 例えばセルE10は全角入力、セルJ15は半角入力を行いたいのです。 現状では、そのセルにくる度に”半角/全角”キーを押して切り替えているのですが、そのセルにカーソルを移動すると自動的に希望する入力モードに変える方法はあるのでしょうか?

  • VBAを使って開発しているのですが

    VBAを使って開発しているのですが、 テキストボックスにバイト数で制限はかけられないのでしょうか? MaxLength を指定しているのですが、 5と指定しても、全角でも半角でも5文字入力出来てしまいます。 よろしくお願いします。

このQ&Aのポイント
  • いきなりPDFのインストールができないという問題が発生しています。
  • 購入したいきなりPDF Ver.7をインストールしようとしていますが、エラーメッセージ「入力されたシリアル番号は既に登録されています」と表示されます。
  • 以前利用していたPCからソフトはアンインストールしているため、なぜこのようなエラーが出るのか疑問です。
回答を見る

専門家に質問してみよう