• 締切済み

ごく簡単なマクロなのですが。

エクセルで、セルの書式を「通貨」、通貨記号を「ユーロ記号」にするために、 Sub 通貨変更_EUR ActiveCell.Select Selection.NumberFormatLocal = "?#,##0.00;-?#,##0.00" End Sub このようなマクロを作ってみました。 実際は「?」の部分を「ユーロ記号」にしたいのですが、 マクロではユーロ記号を表示させることはできないのでしょうか? もともとエクセルに設定してある「ユーロ通貨設定」のボタンでは書式が「会計」になってしまうので、 「通貨」にしたいのですが・・・。

みんなの回答

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.2

Office製品、OSのバージョンによります。 Microsoftさんのページで確認してください。

参考URL:
http://support.microsoft.com/default.aspx?scid=http://www.microsoft.com/japan/support/kb/articles/182/0/05.asp
aya_0704
質問者

補足

あぁっ。 何を使ってるかを書くのすっかり忘れてました。(-_-;) Windows XPで、Excel 2002を使用しております。 上記リンク先を拝見したのですが、 残念ながらよくわかりませんでした・・・。 せっかく教えて頂いたのにすみません。(>_<)。

  • run_away
  • ベストアンサー率42% (8/19)
回答No.1

? (まず上記のユーロ通貨記号がちゃんと出るか不安ですが。。。) ユーロ記号は文字コード(Unicode)でいうとx20ACです。 IMEで入力できますよ。

aya_0704
質問者

補足

IMEで入力、とはどういうことでしょうか? もう少し詳しく教えていただけるとありがたいです。 それから補足ですが、コピペしてもAlt+0128で入力しても「?」しか出ませんでした。 ここでの書き込みでもユーロ記号が出ないところを見ると、 入力自体無理だと考えた方が良いんでしょうかねぇ・・・。

関連するQ&A

  • NumberFormatLocalの値を比較したい

    Excel VBA:円記号の入った「NumberFormatLocal」の値を比較したい 以下の例で文字「バックスラッシュ」はVBAでは「円記号」で表示されています。 セルに設定された書式Selection.NumberFormatLocalの値が文字列「"\#,##0;\-#,##0"」に等しいか調べたいがうまく比較できない。 環境、OS:Windows10, Windows8、Excel:2010,2013 例 セル”A1”に数値「123456」を入力 “A1”に手作業で通貨書式を設定 「セルの書式設定」->「表示形式」->「通貨」->「\-1,234」(黒色:デフォルト) マクロの記録は Sub Macro1() Range("A1").Select Selection.NumberFormatLocal = "\#,##0;\-#,##0" End Sub “A1”に設定された書式が通貨書式であるかをVBAで確認するために プロシジャー test1 を作り、実行すれば”No”になる。 “Yes”を予想してしまうが、”No”になる理由と解決方法が知りたい。 Sub test1() Dim strTuka As String strTuka = "\#,##0;\-#,##0" Range("A1").Select MsgBox Selection.NumberFormatLocal If Selection.NumberFormatLocal = strTuka Then MsgBox "Yes" Else MsgBox "No" End If End Sub どなたか、アドバイスをお願いします。

  • マクロ:セルの範囲指定

    エクセルマクロで困っています。 セルの範囲指定をしようとしています。 初心者過ぎて、よくわかりません。 現在のマクロ↓ Sub 済() If ActiveCell.Column = 21 Then Selection.FormatConditions.Delete '条件付き書式削除 With Selection.Interior .ColorIndex = 16 .Pattern = xlSolid End With ActiveCell.Offset(0, 1).Select With Selection.Interior .ColorIndex = 16 .Pattern = xlSolid End With ActiveCell.Offset(0, 1).Select With Selection.Interior .ColorIndex = 16 .Pattern = xlSolid End With ActiveCell.Offset(0, 1).Select With Selection.Interior .ColorIndex = 16 .Pattern = xlSolid End With ActiveCell.Offset(0, 1).Select With Selection.Interior .ColorIndex = 16 .Pattern = xlSolid End With ActiveCell.Offset(0, 1).Select With Selection.Interior .ColorIndex = 16 .Pattern = xlSolid End With ActiveCell.Offset(0, 1).Select With Selection.Interior .ColorIndex = 16 .Pattern = xlSolid End With ActiveCell.Offset(0, 1).Select With Selection.Interior .ColorIndex = 16 .Pattern = xlSolid End With ActiveCell.Offset(0, 1).Select With Selection.Interior .ColorIndex = 16 .Pattern = xlSolid End With '色変え判定セル書き換え ActiveCell.Offset(0, 5).Select ActiveCell.FormulaR1C1 = "77" ActiveCell.Offset(0, -5).Select Else answer = MsgBox("U列を選択して下さい", vbCritical) End If End Sub やりたい事は、下記の通りです。 列Uがアクティブの時にU~ACの行を塗りつぶし。 列は変動します。 今は、やり方がよく分からなかったため オフセットで一つ一つ塗りつぶしてます。 マクロを組みすぎてファイルが重くなって困っています。 回答よろしくお願いいたします。

  • エクセルのマクロで

    お世話になります 下記のマクロで実行した所 100まで書式設定で保護、ロックしたいのですが b3:l3はロックするものの 4行目以降はロックしません どうしたらいいでしょうか もう1つ、このシートはいつもc3からはじめたいのですが If ActiveCell.Value >= "" Then の部分はどうしたらいいでしょうか よろしくおねがいいたします 初心者でバカな質問ですみません Sub マクロ1() Dim i As Integer For i = 1 To 100 If ActiveCell.Value >= "" Then Range("B3:l3").Select Selection.Locked = True Selection.FormulaHidden = False End If ActiveCell.Offset(1, 0).Select Next End Sub

  • excel マクロ

    Sub Macro1() ' ' Macro1 Macro ' ' ActiveCell.Offset(-1, 0).Range("A1:G1").Select Selection.Copy End Sub マクロの記録だけでこのコードを作ることは可能でしょうか?

  • 記号をマクロで記録することは不可能か?

    記号をマクロで記録することは不可能か? エクセル2003を使用しています。 マクロの記録→挿入→記号と特殊文字で ハートを挿入し、マクロの記録の終了をして標準モジュールを見たのですが Sub Macro1() ActiveCell.FormulaR1C1 = "?" Range("a1").Select End Sub となります。 セルにはハートが入っています。 そのあと、Macro1を実行すると、?がセルに挿入されました。 VBAで記号を挿入することは不可能のなのでしょうか?

  • ある範囲の書式を飛び飛びに貼り付けたい

    Excel2007でマクロ作成してる初心者です。  ある範囲の書式を移動しながら、書式を貼り付けていく  マクロの書き方がわかりません。どなたかご教示おねがいします。 Sub 書式の貼り付け() '"F14:AG28"の範囲に書式を設定 Range("F14:AG28").Select Selection.NumberFormatLocal = "h:mm;@" '"その範囲を24行だけ移動し、全く同じ書式を貼り付ける Selection.Copy Range("F38").Select ’24行目のセル Selection.PasteSpecial Paste:=xlPasteFormats '"その範囲をまた24行だけ移動し、全く同じ書式を貼り付ける   Range("F62").Select ’48行目のセル Selection.PasteSpecial Paste:=xlPasteFormats  これをシートの数だけ繰り返す。  ’・・・  ’・・・ Application.CutCopyMode = False Range("A3").Select End Sub

  • EXCELのマクロについて

    お世話になっております。 以下のマクロを1万行分繰り返したいのですが、回数を1万回と指定する構文を 教えてください。よろしくお願いします。 Sub Macro16() ' ' Macro16 Macro ' ' Keyboard Shortcut: Ctrl+Shift+Z ' ActiveCell.Offset(1, 0).Rows("1:1").EntireRow.Select Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove ActiveCell.Offset(-1, 0).Range("A1:M1").Select Selection.Copy ActiveCell.Offset(1, 0).Range("A1").Select ActiveSheet.Paste ActiveCell.Offset(-1, 2).Range("A1").Select Application.CutCopyMode = False ActiveCell.FormulaR1C1 = "7/5/1905" ActiveCell.Offset(1, 0).Range("A1").Select ActiveCell.FormulaR1C1 = "7/6/1905" ActiveCell.Offset(1, -2).Range("A1").Select End Sub

  • エクセル 行追加マクロについて

    エクセル 行追加マクロについて 2007エクセルマクロ初心者です。 スケジュール表を作成、行追加マクロを作ろうとしてます。 シートの上下に表があり、上の表に行追加です。 関数式を壊したくないので、一部セルへロックをかけています。 以下の点についてご教授をお願いいたします。 行追加マクロを実行するとパスワードを要求されます。 聞かれないようにできないでしょうか。? パスワードを入力した以降は要求されませんが シートの保護解除を選択すると保護が解除されてしまいます。 パスワード記載のマクロを試したことがありますが、 表へオートシェイプが描写できなかったので断念しました。 Sub 行追加() With ActiveSheet 'シート保護解除 .Unprotect Range("A65536").End(xlUp).Offset(-8).Select ActiveCell.Resize(1, 79).Select Selection.Copy Selection.Insert Shift:=xlDown Range("A65536").End(xlUp).Offset(-8).Select ActiveCell.Resize(1, 9).Select Selection.ClearContents 'シート保護 .Protect DrawingObjects:=False, Contents:=True, Scenarios:= _ True End With End Sub

  • 図形を作成するマクロ

    Sub test() ActiveSheet.Shapes.AddShape(msoShapeOval, Selection.Left,Selection.Top, 72, 72).Select End Sub アクティブセルの左上に合わせて円を作成するマクロですが。 "Selection"のところに"x"という変数を用いる場合は、どのような宣言が必要になるでしょうか? ちなみに以下ではエラーになりました。 x = Range(ActiveCell.Address)

  • EXCELでENTERキーでセルの移動マクロ

    こんにちは。 EXCELでENTERキーでセルの移動マクロを使いたいのですが、下記のマクロで改良を教えてもらいたいと思います。 まず、最初は必ず、セルB5にフォーカスしたいということ。そうして、できればOFFSETを使わないで、rangeかcellを使いたいのですが、お願いします。 Sub セル移動() Range("B5").Select Select Case ActiveCell.Column Case 1 ActiveCell.Offset(1, 1).Activate Case 2 ActiveCell.Offset(2, 2).Activate Case 3 ActiveCell.Offset(1, 1).Activate Case 4 ActiveCell.Offset(1, 1).Activate End Select End Sub

専門家に質問してみよう