パワーポイント2003で簡単なコピーのマクロを作成しましたが、実行させようとすると「実行」がグレーになっていて出来ません。「編集」や「削除」は出来ます。どうしてでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (1件)

・まずは


ツール
→マクロ
→セキュリティ
→セキュリティレベル[中]
にして、いったんPowerPoint終了。
・再びPowerPointを起動してファイルを開き、
「マクロを有効にする」のほうを選択。

でどうでしょうか?
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qパワーポイントのハイパーリンク機能で教えてください

PowerPoint2000を使用しております。ハイパーリンクについて質問です。
ハイパーリンクを挿入した文字列は、スライドショー時には、その文字列
にマウスカーソルを合わせると「指マーク」になり、クリックできますが、
これをスライドショーではなく、通常の編集画面でもできるようにする
にはどのようにすればよろしいでしょうか?
編集画面でも、文字列に合わせて右クリックから「ハイパーリンク」⇒
「開く」でリンク先を開けることはわかるのですが、編集画面から1クリック
でリンク先にジャンプしたいのです…。

Aベストアンサー

できないと思いますよ。
クリックするたびにジャンプしてたら、
普通に編集できなくなってしまうと思うのですが・・・

>編集画面でも、文字列に合わせて右クリックから「ハイパーリンク」⇒
>「開く」でリンク先を開けることはわかるのですが、

それをマクロ化して、ボタンをツールバーに置けば良いと思います。

ActiveWindow.Selection.ShapeRange.ActionSettings(ppMouseClick).Hyperlink.Follow

これでできました。

QPowerPointでマクロをショートカットキーに割り当てる方法

現在、エクセルで以下のようなマクロをアドインとして作成して、「CTRL+,」と「CTRL+.」で表示倍率を変えれるようなショートカットを割り当ててます。
同じことをパワーポイントでアドインを作成してやろうとすると、Application.OnKeyのところでエラーになってしまいます。同じVBAでも違うんでしょうか。
PowerPointで同じことをやろうとするとどうすればいいでしょうか?
ご存知の方がいらっしゃれば教えてください。
====================================================
Option Explicit
Sub auto_open()
Start 1
End Sub
Sub Start(num%)
Dim myBar As CommandBar
Dim myCtrl As CommandBarControl
Application.OnKey "^{.}", "Zoomup"
Application.OnKey "^{,}", "Zoomdown"
End Sub
Sub Zoomup()
If ActiveWindow.Zoom < 390 Then
ActiveWindow.Zoom = ActiveWindow.Zoom + 5
End If
End Sub
Sub Zoomdown()
If ActiveWindow.Zoom > 10 Then
ActiveWindow.Zoom = ActiveWindow.Zoom - 5
End If
End Sub

現在、エクセルで以下のようなマクロをアドインとして作成して、「CTRL+,」と「CTRL+.」で表示倍率を変えれるようなショートカットを割り当ててます。
同じことをパワーポイントでアドインを作成してやろうとすると、Application.OnKeyのところでエラーになってしまいます。同じVBAでも違うんでしょうか。
PowerPointで同じことをやろうとするとどうすればいいでしょうか?
ご存知の方がいらっしゃれば教えてください。
====================================================
Option Explicit
Sub auto_open...続きを読む

Aベストアンサー

アドインにして、新しくできたツールバーに
ショートカットキーの指定もするのが簡単ですね。

newBarというツールバーが画面下にでき、
Alt+.でズームアップ
Alt+,でズームダウン
です。

Sub Auto_Open()
My_Bar
End Sub
Sub My_Bar()
Dim n As Integer
Dim myBar As CommandBar
Dim myButton As CommandBarButton
On Error Resume Next
Application.CommandBars("newBar").Delete
On Error GoTo 0
Set myBar = Application.CommandBars.Add("newBar", msoBarBottom, , True)
With myBar
With .Controls.Add(msoControlButton)
.Style = msoButtonCaption
.Caption = "ズームUP(&.)"
.OnAction = "Zoom_UP"
End With
With .Controls.Add(msoControlButton)
.Style = msoButtonCaption
.Caption = "ズームDown(&,)"
.OnAction = "Zoom_Down"
End With
.Visible = True
End With
End Sub
Sub Zoom_Up()
With ActiveWindow.View
If .Zoom < 390 Then
.Zoom = .Zoom + 5
End If
End With
End Sub
Sub Zoom_Down()
With ActiveWindow.View
If .Zoom > 10 Then
.Zoom = .Zoom - 5
End If
End With
End Sub
Sub Auto_Close()
On Error Resume Next
Application.CommandBars("newBar").Delete
End Sub

アドインにして、新しくできたツールバーに
ショートカットキーの指定もするのが簡単ですね。

newBarというツールバーが画面下にでき、
Alt+.でズームアップ
Alt+,でズームダウン
です。

Sub Auto_Open()
My_Bar
End Sub
Sub My_Bar()
Dim n As Integer
Dim myBar As CommandBar
Dim myButton As CommandBarButton
On Error Resume Next
Application.CommandBars("newBar").Delete
On Error GoTo 0
Set myBar = Application.CommandBars.Add("newBar", msoBarBottom, , True)
With myBar...続きを読む

QVBAで既存のパワポのファイルを開くには?

アクセスやエクセルからVBAで既存のパワポのファイルを開くには?

参照設定をして、
Sub test()
Dim App As PowerPoint.Application
Dim MyFileName As String

Set App = CreateObject("PowerPoint.Application")

MyFileName = CurrentProject.Path & "サンプル.ppt"
App.Visible = True

Set App = Nothing
End Sub

を実行すると、パワポの空のアプリケーション開きますが肝心のファイルが開きません。

開く方法を教えてください。

Aベストアンサー

ExcelファイルやAccessファイルと
パワーポイントのファイルが同じフォルダにあるとして
Accessなら、CurrentProject.Path
Excelなら、ThisWorkbook.Path
でフォルダ名までが得られますので、それに \ を付け足して
CurrentProject.Path & "\" & "サンプル.ppt"

パワーポイントに参照設定を行っているのですから
CreateObjectせずに
Sub PPTopen()
Dim pp As New PowerPoint.Application
pp.Presentations.Open ThisWorkbook.path & "\" & "サンプル.ppt"
以下省略
で。
開くだけで、その後はVBAでパワーポイントを操作しないのであれば
Shell ("explorer.exe" & Chr(32) & ThisWorkbook.path & "\" & "サンプル.ppt"
↑読み取り専用で開かれました。当方 Office2010 の場合
↓PPTファイルをダブルクリックで開いた状態
CreateObject("shell.application").shellexecute ThisWorkbook.path & "\" & "サンプル.ppt"
とかでも。

ちなみにパワーポイントは数年来使ったことはありませんので
これ以上のことはご勘弁ください。

ExcelファイルやAccessファイルと
パワーポイントのファイルが同じフォルダにあるとして
Accessなら、CurrentProject.Path
Excelなら、ThisWorkbook.Path
でフォルダ名までが得られますので、それに \ を付け足して
CurrentProject.Path & "\" & "サンプル.ppt"

パワーポイントに参照設定を行っているのですから
CreateObjectせずに
Sub PPTopen()
Dim pp As New PowerPoint.Application
pp.Presentations.Open ThisWorkbook.path & "\" & "サンプル.ppt"
以下省略
で。
開くだけで、その後はVBAでパワーポイント...続きを読む

Qなぜマクロの記録がなくなってしまったのでしょうか?

なぜオフィス2007のパワポは、マクロの記録がなくなってしまったのでしょうか?

2003のパワポを使っていた時は、
とても重宝していたのですが、なくなってしまって残念です。

あまり需要がなかったのでしょうか?

Aベストアンサー

 ソフトそのものやOSそのものの機能などに関することは
質問しても無駄です。それを開発した会社が何らかの理由でそうしているわけで
一般の人に対して理由を公開することはないでしょう。
 
 おっしゃる通りで、VBAで何かやろうと思ってもそのたびに調べなおさなければいけないので時間がかかりますね。以前に作成しておいたものを見てそこから再利用すると少し楽になります。
 ですが、プレゼンテーションに必要なことはもうほとんどなんでも一般機能でできてしまいます。私なんかがVBAでやっていた機能も2010版ではいくつか取り込まれてしまっています。
 最初に書いた通り理由はわかりませんが、マクロ記録機能をつけるよりもパフォーマンス改善に力を入れたのではないかと思います。2010版でも搭載されていません。

 需要とはあまり関係なく作成者が増えているだけなのかもしれませんが、
私がpowerpoint VBAをはじめてたくさんのサンプルコードを無償公開していた頃に比べると、今では、ネット検索のヒット数は40倍ほど増えています。

QExcelとPowerPointをVBAで連携させる方法

おけましておめでとうございます。
本年もよろしくお願いします。
で、本題ですが、
(Win95でExcel2000とPowerPoint2000を使用)
EXCELのデータベースの表を順々にPowerPointのテキストボックスへ
コピーして印刷するためにVBAを作成したいと思ってます。
(印刷形式がPowerPointのため)
ここには作成できるんですが、両者のVBAをどのように
連携させるかわかりません。
よろしくご教授ください。

また、PowerPointのVBAでマクロの記録を使わず、オブジェクト名
(("Text Box 1")とか)を知る方法もあわせてよろしくご教授ください。

Aベストアンサー

>オブジェクト名はVBAを使わずにパワーポイント上だけでは確認しようが無いと言うことでしょうか。

絶対できないとまでは断言できる自信はないのですが、少なくともその方法は知りません。

オブジェクト名はVBAを使えば変更することはできます。
Application.ActiveWindow.Selection.SlideRange.Shapes.Item(1).Name = "New Name 1"

だだ、この設定した名称が勝手に変更されることはないのかどうか自信がありません。少なくとも自動的に生成した「オブジェクト名」は勝手に変更されてしまいます。

Qパワーポイントの自動的な実行

Windows2000、PowerPoint97を使用しています。

コンピュータが起動したら、自動的に作成したパワーポイントの
スライドショーの実行がされるようにしたいのですが、
方法がわかりません。

パワーポイントを作成し、保存したファイルをスタートアップに
登録してみましたが、その状態では、コンピュータの起動後、
ファイルは開きますが、編集状態のままです。

できれば具体的な方法を教えていただけたらありがたいです。

どうぞ宜しくお願いいたします。

Aベストアンサー

ある事情で、回答がずいぶん遅くなってしまいました。
すみません

> 最後のスライドの後は、黒い画面でクリックしないとデスクトップ画面に
> 戻れません。

元原稿を開いてみてください。
[ツール]-[オプション] の [表示] タブで、"最後に黒いタブを表示する" が
選択されているはずですので、このチェックを外して、改めて PPS 形式で
保存してください。

QVBからPowerPointのマクロを実行する方法

代記の通りなのですが、VBを利用して、PowerPointのマクロを実行したいのですが、開くところは分かるのですが、実行する記述が分かりません。

どなたかヒントになることを教えていただけないでしょうか?

また、マクロの内容なのですが、EXCELで作ったサンプルデータの内容のグラフを表示したいのですが、マクロ機能を使ってデータのインポートを行ったところ、インポート部分のマクロのみ記述されませんでした。

こちらの方もどなかたヒントになることをご存知の方がおりましたアドバイスをいただけると幸いです。

よろしくお願いします。

環境:WIN_XP
VB6
POWERPOINT 2000

Aベストアンサー

でけた

Set msGrf = ppApp.ActiveWindow.Selection.ShapeRange.OLEFormat.Object.Application
With msGrf
  .FileImport "C:\Book1.xls"
End With

QEXCELファイルのカレントフォルダを取得するには?

EXCELファイルのカレントフォルダを取得するには?

C:\経理\予算.xls

D:\2005年度\予算.xls

EXCEL97ファイルがあります。

VBAで
  カレントフォルダ名
(C:\経理\,D:\2005年度\)
を取得する事は可能でしょうか?

CURDIRでは上手い方法が見つかりませんでした。

Aベストアンサー

こんばんは。
Excel97 でも、同じですね。以下で試してみてください。

Sub test()
'このブックのパス
a = ThisWorkbook.Path
'アクティブブックのパス
b = ActiveWorkbook.Path
'Excelで設定されたデフォルトパス
c = Application.DefaultFilePath
'カレントディレクトリ
d = CurDir
MsgBox "このブックのパス   : " & a & Chr(13) & _
   "アクティブブックのパス: " & b & Chr(13) & _
   "デフォルトパス    : " & c & Chr(13) & _
   "カレントディレクトリ : " & d & Chr(13)
End Sub

Qパワーポイントで、図を貼り付けると自動的にサイズ調整

 検索しましたが、うまく見つかりませんでしたので質問します。
 パワーポイントで、別のページから図や数式(数式エディタによるもの)をコピーして貼り付ける場合に、もともとそこにあった表やページのタイトルの大きさが勝手に変化してしまいます。
 崩れてしまった配置や大きさを元に戻すのが大変で、困っています。そのようにならない設定がありましたらお教えください。

Aベストアンサー

お使いになっているバージョンは、2002以降でしょうか?

もしもそうなら、ツールメニューの中の「オートコレクトのオプション」。その中に「挿入したオブジェクトの自動レイアウト」っていう項目があります。チェックが入っているはずですので、それを取ってみて下さい。

解決するといいのですが・・・。

QPowerpoint 2003 でのVBA UserFormの表示方法

いつもPowerpoint用のマクロを一つのファイルにまとめ、ツールバーに実行用のボタンを追加して使用しています。マクロファイルは閉じたままにしています。
このたびUserFormをModalからModelessに修正し、マクロを実行しましたらFormが表示されませんでした。マクロファイルを開いたまま実行するときちんと表示されます。また、UserFormがModalの時はマクロファイルを閉じたままでもきちんと表示されていました。

マクロが保存されているファイルを閉じたままでもModelessでUserFormを表示する方法がありましたら教えてください。

ちなみに、現在はこのようなスクリプトになっています。
Load frmXXX
frmXXX.Show vbModeless
(frmXXX.Showだけの時はきちんと表示されていました)

ご回答お待ちしております。

Aベストアンサー

 確かにファイルを開いていないと
一瞬でユーザーフォームが消えますね。
Application.Run を使ってもだめ。
Excelとはまったく違う動作です。
でも、それほど困ることはないのと思うのですが。
モーダルでも、その間PowerPointの編集ができない
だけで、ExcelやWordには切り替えられるので。

 どうしてもモードレスでというのなら、
以下のような方法があるかもしれません。

●標準モジュール
Public myFlg As Boolean
Sub test()
UserForm1.Show vbModeless
Do Until myFlg = True
DoEvents
Loop
End Sub

●UserForm1
Private Sub CommandButton1_Click()
Me.Hide
MsgBox "OK"
myFlg = True
Unload Me
End Sub
Private Sub UserForm_Terminate()
myFlg = True
End Sub

※ループの間の動作がもたつくときは、
●標準モジュール
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Public myFlg As Boolean
Sub test2()
UserForm1.Show vbModeless
Do Until myFlg = True
Sleep (500) '←数字調整
DoEvents
Loop
End Sub

 確かにファイルを開いていないと
一瞬でユーザーフォームが消えますね。
Application.Run を使ってもだめ。
Excelとはまったく違う動作です。
でも、それほど困ることはないのと思うのですが。
モーダルでも、その間PowerPointの編集ができない
だけで、ExcelやWordには切り替えられるので。

 どうしてもモードレスでというのなら、
以下のような方法があるかもしれません。

●標準モジュール
Public myFlg As Boolean
Sub test()
UserForm1.Show vbModeless
Do Until myFlg = True
D...続きを読む


人気Q&Aランキング

おすすめ情報