• ベストアンサー

VBEの記入で0から始まる文字や日本語は入らないのでしょうか?

教えてもらいたいんですが 例えば .Offset(0, 5).Value = 0500 .Offset(0, 2).Value = 日本国 のようにしたいのですが英数字(0で始まらないもの)しか入らないのでしょうか? 恐れ入りますがお解りの方がいらっしゃいましたらよろしくお願いします。

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

  • ベストアンサー
  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.2

http://okwave.jp/qa4199813.html の続きであれば、 .Offset(0, 5).NumberFormatLocal = "@" .Offset(0, 5).Value = ID .Offset(0, 2).Value = Nam IDを入れるセルの書式を事前に文字列としてから、値を代入すれば 問題ないと思いますよ。

wingup
質問者

お礼

とても解かりやすい回答ありがとございました。 今後色々なことに応用も出来そうです。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

VBAのコードで、質問のように書くことは出来ない。セルの値に値を代入しているが、数値は0500と入れても500となる。 これなどVBAのことでなくエクセルそのものの仕様。 VBEの入力の段階で500になる。VBE上で0500のままにすることは出来ない。 文字列でよいなら 表示形式を文字列にして、a.Offset(0,5)="0500" 出できる。aの部分Rangeが要るよ。 「日本語」の方は文字列の代入になるから、""で囲まなくてはならない。 >りますがお解りの方がいらっしゃいましたらよろしくお・・というレベルの話じゃなくて、VBAのイロハのイです。 ーー シートのセルの見た目で0500と見せるのは,セルの表示形式の問題になる。先にセルの表示形式を文字列に設定しておく必要がある。 そうしないとエクセルの数値化機能が優先して数値500になる。 これもエクセルの仕様の問題。 セルの書式を文字列に設定するVBAは、マクロの記録で判る。 例 Range("D1:D5").Select Selection.NumberFormatLocal = "@"

wingup
質問者

お礼

ありがとうございました。 わかる人には簡単なことなんですよね。 今後は気をつけます

  • NYAx2
  • ベストアンサー率27% (3/11)
回答No.1

文字列として入力する場合は、「"」(クォーテーション)で囲む必要があります。 つまり、 .Offset(0, 5).Value = "0500" .Offset(0, 2).Value = "日本国" もちろん、「"」(クォーテーション)で囲まないで指定すれば、変数名として扱われますが、変数名は英数字(0で始まらないもの)しか扱いませんから。

wingup
質問者

お礼

ありがとうございます。 今からやってみます。

関連するQ&A

  • 日本人と日本語について

    日本人は平仮名カタカナ漢字、英数字など使い分けています。 カタカナを使って表現が絶妙な時もあります。 中国ではなんでも漢字で表します。 韓国はハングル文字と漢字です。 アメリカは英数字などだと思います。 他に知ってるのはフランス語です。 フランスは数字の表現が変だと思いました。 それぞれのお国柄で異なると思います。 ところでプログラミング言語は英数字ですね。 日本人の弱いところにもなるようです。 母国語の意味。 日本の言葉は奥が深くてとても難しいと思います。 日本語の表現についてのご考察をお願い申し上げます。

  • google 日本語がクロームですぐ日本語に

    お世話になります。 標記の通り、google日本語を、英数字に切り替えて、別の場所をクリックすると、英数字であるべきなのに、日本語に切り替ってしまいます。 Internet Explorerでは、このような現象は起こりません。 ご回答よろしくお願いします。

  • 日本語文字入力ができません

    イラストレーターCSを使用時に、オブジェクト内で日本語入力をしようとすると、タスクバーにある日本語入力が消えて入力できなくなるのです。 英数字半角は入力できます。 他の画面(他のソフト)では正常に入力できるのです。今もこれを入力できています。 どなたか教えてください。

  • スマホのGoogle日本語の英文字について

    お世話になります。 Google日本語がPCでとても便利だったのでスマホにもインストールしました。 そこで、質問ですが、携帯モードで英数字を打つとき、これまでだと携帯画面でも英数字時の入力が可能でした。ところが、Google日本語で英字を入力するときはQWERTY配列を選択したので、QWERTY配列でしか入力できなくなりました。 それで十分では無いかと思われるかもしれませんが、英字入力のたびにQWERTY配列を選択するのはいまいち不便です。 どうすれば良いか教えて下さい。 よろしくお願いします。

  • 突然、日本語が入力できなくなります

    パソコンを使っていると、突然、日本語入力ができなくなるとがあり困っています。 普段はかな入力、IMEを使っています。 特にWEBサイト上に何かを入力する際に起こっているようです。 その際は英数字からかなに変更する操作をしても英数字しか入力できません。 でもメーラーやワード上では普通にかなで入力できます。 なんででしょう。 どこに問題がありるのでしょうか。

  • デスクトップ上の日本語が□へ文字化け

    お世話になります。 デスクトップ上の日本語表示部分{日本語のアイコン、スタートメニュー、スタートメニューの中身(プログラム等)}が全て□(四角)になってしまいました。英数字は問題なく表示されています。 また、WordやExcel等は通常に起動し、その中の日本語も 問題なく表示されます。 きっかけは、壁紙のダウンロードでした。復旧させる方法は何かありますでしょうか? 環境はWin2000ProSP4です。 よろしくお願いします。

  • VBA 書式設定を保持したままセル内の文字を追記

    EXCEL2010で医療系マクロを作っています。 CheckBox1は、Selection.Offset(0, -1)のセル内の文字を取消線にする為のチェックボックスです。 TextBox11は、Selection.Offset(0, -1)のセル内の文字の下に追記する為のテキストボックスです。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ If CheckBox1 = True Then ' ' '取消線がある場合 Selection.Offset(0, -1).Characters(InStr(Selection.Offset(0, -1), vbLf), 1000).Font.Strikethrough = True Selection.Offset(0, -1).Value = Selection.Offset(0, -1).Value + vbLf + TextBox11.Value ' ' '☆追記して改行以降を取消し追記を解除 Else ' ' '取消線がない場合 Selection.Offset(0, -1).Value = Selection.Offset(0, -1).Value + vbLf + TextBox11.Value ' ' '☆追記 End If ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ この場合、Selection.Offset(0, -1)の文字にすでに取消線が設定されている場合にそれが外れたり、元々ついていなかったのについたりします。 書式設定を保持したままセル内の文字を追記することは可能でしょうか? 何卒ご教示のほどよろしくお願いします。

  • エクセルの並び替えで日本語を先にしたい

    エクセルの並べ替えで質問です。 バージョンは2003です。 同じ列に日本語と英数字とが入力されているセルが多数あり、 それをあいうえお順に並べ替えたいと思っています。 エクセルの並べ替えでソートすると、 どうしても英数字が先に表示され、 その後に日本語のセルが表示されてしまいます。 並べ替えで日本語を先に表示して、 次に英数字と並べ替えたいのですが、 良い方法はないでしょうか? よろしくお願いします。

  • たまに日本語が打てない

    たまに、ウィンドウ内の検索フォームやメールフォームへ文字を入力しようとすると、日本語がうてない場合があります。 半角英数字は打てます。 そして、打てない時はそのウィンドウを閉じ、新しいウィンドウを開くとそちらだけ打てる事があります。 全角が打てるウィンドウと、打てないウィンドウがなぜか出てきます。 (同じYahoo!を表示していても) これはどうしてですか? 起動した直後でもおこったり、おこらなかったりします。 メモ帳などには日本語が打てるので、ウィンドウ内のみです。(IEです)

  • DocuWorks Deskで日本語が文字化けします。

    Google ChromeとFirefoxで開いたページをDocuWorks Deskに印刷すると日本語が文字化けします。画像と英数字は正常です。Internet Explorerでは、すべて正常印刷できます。何かソフトを足すと書き込めるようになるでしょうか?単なる相性でしょうか?Versionが古くて読めないのでしょうか?詳しい方がいらしたら教えて頂けないでしょうか。DocuWorks Desk Version4.1.3です。Javaは、入れました。

専門家に質問してみよう