• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excelのマクロが動きません。)

Excelのマクロが動かない!エクセル2010での対応方法を教えてください

sknbsknb2の回答

  • sknbsknb2
  • ベストアンサー率38% (1125/2898)
回答No.1

64bit版をインストールしていませんか? 32bit版を使うと、そのままで動くようになるのではないかと思います。

tezzy
質問者

お礼

返信ありがとうございます。 説明不足で申し訳ございません。 Windows7の32Bitの環境でした。 m-take0220さんのアドバイスのおかげで無事解決できました。

関連するQ&A

  • EXCEL VBA でマクロが作動するシートとしないシートがある。

    右クリックのショートカットメニューに作成したマクロを追加しました。その追加マクロを実行しても右クリックのショートカットに追加されないシートがあります。同じbookでもその他のシートでは、右クリックのショートカットメニューに追加されているものもあります。 なぜでしょうか? できないのは、右クリックのショートカットの表示です。目的の動作(下記の場合は、フォントの色を変える)は、どのシートでも作動します。 ちなみにプロシージャーは次のように書いています。PERSONAL.XLSに登録してあります。 宜しくお願いします。 'セルの右クリックショートカットメニューを作成 Sub 色々右クリック() 赤みぎクリック 黒みぎクリック 青みぎクリック End Sub Sub 赤みぎクリック() Dim Newb Set Newb = Application.CommandBars("Cell").Controls.Add() With Newb .Caption = "赤" .OnAction = "赤フォント" .BeginGroup = False End With End Sub Sub 赤フォント() Selection.Font.ColorIndex = 3 End Sub Sub 黒みぎクリック() Dim Newb Set Newb = Application.CommandBars("Cell").Controls.Add() With Newb .Caption = "黒" .OnAction = "黒フォント" .BeginGroup = False End With End Sub Sub 黒フォント() Selection.Font.ColorIndex = 1 End Sub Sub 青みぎクリック() Dim Newb Set Newb = Application.CommandBars("Cell").Controls.Add() With Newb .Caption = "青" .OnAction = "青フォント" .BeginGroup = False End With End Sub Sub 青フォント() Selection.Font.ColorIndex = 5 End Sub Sub Reset_RightClick() Dim rightBar As CommandBar Application.CommandBars("cell").Reset End Sub

  • エクセル ルーチンマクロ

    エクセルにて、コピー貼付を禁止するマクロを、教えてGooの過去のQ&Aから、参照させていただきました。 '--------------------------------------------------------------- Sub DisableCommandButtons(Cmd_bln As Boolean) 'コピー・貼り付けを停止させるサブルーチン・マクロ  Dim cmd As Variant  Dim Cmdb As Object  Dim CmdNames As Variant  CmdNames = Array("Worksheet Menu Bar", "Cell", "Column", "Row")  'ショートカットのインスタンス  If Cmd_bln = False Then   Application.OnKey "^c", ""   Application.OnKey "^v", ""   Application.OnKey "^x", ""  Else   Application.OnKey "^c"   Application.OnKey "^v"   Application.OnKey "^x"  End If  'コマンドボタンのEnable  For Each cmd In CmdNames  If cmd = "Worksheet Menu Bar" Then   With Application.CommandBars(cmd).Controls(2)    .Controls(3).Enabled = Cmd_bln    .Controls(4).Enabled = Cmd_bln    .Controls(5).Enabled = Cmd_bln   End With  Else   With Application.CommandBars(cmd)    .FindControl(, 19).Enabled = Cmd_bln 'Copy    .FindControl(, 22).Enabled = Cmd_bln 'Paste    .FindControl(, 21).Enabled = Cmd_bln 'Cut   End With  End If  Next cmd End Sub '--------------------------------------------------------------- このマクロを実行した所、コンテキストメニュー及びショートカットキーのコピー、貼付が無効になりました。 しかし、マクロを有効にしたエクセルファイルを閉じても、他のエクセルファイルもコピー、貼付が無効になってしまいました。 コピー、貼付を有効にするためのマクロを動かさないとダメなのか?と思い、色々試してみたのですが、うまくいきません。 EnableCommandButtons というマクロを別に作り ショートカットのインスタンスの  If Cmd_bln = False Then を  If Cmd_bln = True Then に 書き換えて、実行した所、ショートカットキーは有効になったのですが コンテキストメニューのコピー、貼付を有効にするやり方がわかりません。 どなたか、助けていただけないでしょうか? よろしくお願い致します。

  • Excel VBAでツールバーにマクロを登録したい

    自作のツールバーをブックに添付し、 スタートアップにマクロを書いたブックを保存し(起動して非表示にしてあります)、 そのマクロをツールバーの各ボタンに登録しようとしています。 下記のようなコードを書いたのですが、ツールバーに作成したボタンにはマクロが登録できるのですが、 サブメニュー内のボタンには登録できません。 Dim MyWB, NBar MyWB = "stampB.xls" NBar = "stampB1.0" For i = 1 To Application.CommandBars(NBar).Controls.Count  'ボタンのキャプションと同じ名前のマクロを登録  With Application.CommandBars(NBar).Controls.Item(i)   .OnAction = MyWB & "!" & .Caption  End With Next i これをどのように改良したら、サブメニュー内のボタンにもマクロを登録できるようになりますでしょうか? ご存知の方どうぞよろしくお願いします。

  • エクセル ルーチンマクロ

    以前コピー・貼り付けを停止させる為に、下記マクロを参照させて頂いたのですが、 '--------------------------------------------------------------- Sub DisableCommandButtons(Cmd_bln As Boolean) 'コピー・貼り付けを停止させるサブルーチン・マクロ  Dim cmd As Variant  Dim Cmdb As Object  Dim CmdNames As Variant  CmdNames = Array("Worksheet Menu Bar", "Cell", "Column", "Row")  'ショートカットのインスタンス  If Cmd_bln = False Then   Application.OnKey "^c", ""   Application.OnKey "^v", ""   Application.OnKey "^x", ""  Else   Application.OnKey "^c"   Application.OnKey "^v"   Application.OnKey "^x"  End If  'コマンドボタンのEnable  For Each cmd In CmdNames  If cmd = "Worksheet Menu Bar" Then   With Application.CommandBars(cmd).Controls(2)    .Controls(3).Enabled = Cmd_bln    .Controls(4).Enabled = Cmd_bln    .Controls(5).Enabled = Cmd_bln   End With  Else   With Application.CommandBars(cmd)    .FindControl(, 19).Enabled = Cmd_bln 'Copy    .FindControl(, 22).Enabled = Cmd_bln 'Paste    .FindControl(, 21).Enabled = Cmd_bln 'Cut   End With  End If  Next cmd End Sub '--------------------------------------------------------------- このマクロを実行した所、コンテキストメニュー及びショートカットキーのコピー、貼付が無効になりました。 EnableCommandButtons というマクロを別に作り ショートカットのインスタンスの  If Cmd_bln = False Then を  If Cmd_bln = True Then に 書き換えて、実行した所、ショートカットキーは有効になったのですが コンテキストメニューのコピー、貼付を有効にするやり方がわかりません。 以前、 同じ質問させていただき、ご回答頂いたのですが、別のPCでは、その方法でもダメなことが分かりました。 OSはXP Pro エクセルはは2003です どなたか、助けていただけないでしょうか? よろしくお願い致します。

  • Excel 数式バーを非表示にしたい(VBA)

    ツール-オプション-表示-数式バーのチェックを外せば 数式バーを非表示にできますが、VBAでやりたいと思います。 次の様に記述してみましたが、書式バーの「数式バー(F)」のボタンが非表示になるだけで数式バー自体は非表示になりません。 Private Sub Workbook_Open() Application.CommandBars("formatting").Controls(23).Visible = False End Sub 次の様に記述してみても今度は「数式バー(F)」のボタンが操作不可になるだけで数式バー自体は非表示になりません。 Private Sub Workbook_Open() Application.CommandBars("formatting").Controls(23).Enabled = False End Sub 他にも試すのですが、エラーになったりで答えに辿り着けず・・ どなたかヒントだけでもお願いします。

  • アクセスからエクセルのマクロを実行したいのですが

    Sub エクセルのVBA実行する() Dim xlsWB As Object Dim MyFileName As String MyFileName = "C:\test.xlsx" Set xlsWB = GetObject(MyFileName) xlsWB.Application.Run xlsWB.Name & "!マクロ" Set xlsWB = Nothing End Sub と言うコードを作ったのですが エクセルファイルにはパスワードがかかっています。 パスワード付のエクセルファイルを開きマクロを実行するにはどうすればいいでしょうか?

  • エクセルのマクロについて

    エクセルで写真帳を作成してるのですが、 保存容量が大きいため、下記のマクロをコピペしたのですが 画像は消えてしまい困ってます。 (1)どなたか下記のマクロ解読お願いします。 (2)それと、新しく保存すると、jpegの画像が消えてしまい  どうしたらよいかわからない。 (3)ボタンを作成してまして、これも消したい。  オブジェクト削除なのかなぁ? わがまま言ってすいません。自分には無理なんでお願いします。 Option Explicit Sub Macro1() Dim SheetCount As Integer Dim i As Integer Dim fname As String Dim Ws As Worksheet Dim OrgWorkBook As Workbook Dim NewWorkBook As Workbook SheetCount = Worksheets.Count ChDir "C:\Documents and Settings\たかじん\デスクトップ" fname = Application.GetSaveAsFilename _ (, "Microsoft Excel ブック (*.xls), *.xls") If fname = "False" Then Exit Sub Set OrgWorkBook = ActiveWorkbook Workbooks.Add (xlWBATWorksheet) Set NewWorkBook = ActiveWorkbook For i = 2 To SheetCount Sheets.Add after:=Worksheets(Worksheets.Count) Next OrgWorkBook.Activate i = 1 For Each Ws In Worksheets Ws.Cells.Copy Destination:=NewWorkBook.Sheets(i).Range("A1") i = i + 1 Next NewWorkBook.Activate ActiveWorkbook.Close True, fname ChDir Application.DefaultFilePath

  • EXCELマクロの話ですが

    EXCELマクロの話ですが マクロでcellに以下のようなものを書き出したいとします。 TOM-001,TOM-002,TOM-003・・・TOM-010,TOM-011 と続くようなものを作りたいとおもい以下のようなマクロを組んでみたが・・・ sub tom()  Dim i As Integer  For i = 0 To 11   cells(i + 1,1).value = "TOM-" & i + 1  Next i end sub 当然のことながら・・・ TOM-1,TOM-2,TOM-3・・・TOM-10,TOM-11 どのようにしたら 最初に描いた『TOM-000』のようなものになるだろうか?

  • VBA を使用してexcel起動時に 右クリックメニューの行削除や列削除を無効にしようとするとエラーが出ることがある。

    お世話になります。 VBA を使用してexcel起動時に 右クリックメニューの行削除や列削除を無効して、下記VBAを作成しました。 しかしながら、起動時(実行時)に 「実行時エラー 5 プロシージャの呼び出し、または引数が不正です。」が出ることがあります。 でないときもあるのですが、 デバック時にとまるところは、毎回変わり(1)~(5)のどれかで止まります。 使用したい環境はexcel2007,excel2003で正常に動くようにしたいのですが、何卒よろしくお願いします。 *************ソース********************* Private Sub Workbook_Open() InsertEnabled False End Sub Private Sub Workbook_BeforeClose(Cancel As Boolean) InsertEnabled True End Sub Private Sub InsertEnabled(flg As Boolean) With Application (1) Application.CommandBars("Worksheet Menu Bar").Controls("挿入(&I)").Enabled = flg (2) Application.CommandBars("Cell").Controls("挿入(&I)...").Enabled = flg (3)Application.CommandBars("Cell").Controls("削除(&D)...").Enabled = flg (4)Application.CommandBars("Row").Controls("挿入(&I)").Enabled = flg (5)Application.CommandBars("Row").Controls("削除(&D)").Enabled = flg .CommandBars.FindControl(, 296).Enabled = flg .CommandBars.FindControl(, 293).Enabled = flg End With End Sub

  • Excelマクロのことで教えて下さい

    初歩的なことですみません。 E列の値をF列に値を入れるために下記のマクロを組みました。 Sub test() Worksheets("Sheet1").Select Dim i As Long For i = 2 To Cells(Rows.Count, 4).End(xlUp).Row Range("F2").Value = "=E2/1024/1024" Cells(i, 6).FillDown Range(Cells(2, 6), Cells(i, 6)).Copy Range("F2").PasteSpecial Paste:=xlValues Next i End Sub ところがF列に「値のみを貼り付け」をした時に、途中から同じ値のみがコピーされてしまい困っています。 (画像参照) うまく貼り付けることができるマクロをお教え下さい。 よろしくお願いいたします。