dポイントプレゼントキャンペーン実施中!

Excel で写真の挿入VBAは 皆さんのご回答を元になんとか出来ました。
回答者さま 有難う御座いました。
挿入したファイル(写真)のサイズ変更(見た目のサイズ)も出来ます。


ところが、
Wordへの写真挿入 
サイズの変更 になりますと、(VBAで記述したいのに)

「図の書式設定」自体効きません。

↑ 「マクロの記録」をしても、出来ません。
(ボタンは False 状態)


「マクロの記録」で出来ないという事は
つまり、Wordでは無理って考えれば良いのでしょうか。

A 回答 (2件)

こんにちは。

KenKen_SP です。

> つまり、Wordでは無理って考えれば良いのでしょうか。

何をやりたいのか具体的に書かれてないので、コメントし難いのですが、
とりあえず、画像を挿入したいなら、

  Application.Dialogs(wdDialogInsertPicture).Show

で画像挿入のダイアログを表示できます。また、ファイル名を指定して画像を
挿入し、各種操作するには、

Sub Sample()

  Dim PIC As Shape
  Dim strFilename As String

  strFilename = "C:\Sample.jpg"

  Set PIC = ActiveDocument.Shapes.AddPicture(strFilename)
  With PIC
    .LockAspectRatio = msoTrue ' 縦横比を保つ
    ' ミリメートル指定でサイズを変更する場合(例:50mm)
    .Width = MillimetersToPoints(50)
    ' 水平方向の位置を決めるときの基準点を余白に設定
    .RelativeHorizontalPosition = wdRelativeHorizontalPositionMargin
    ' 垂直方向の位置を決めるときの基準点を余白に設定
    .RelativeVerticalPosition = wdRelativeVerticalPositionMargin
    ' ミリメートル指定で余白位置からの場所を指定(例:上10mm、左10mm)
    .Top = MillimetersToPoints(10)
    .Left = MillimetersToPoints(10)
    ' さらに動かしてみる(例:20ポイントずらす)
    ' ミリメートル指定なら .IncrementTop MillimetersToPoints(10) で 10mm
    .IncrementTop 20
    .IncrementLeft 20
    ' さらに回転(例:90度)
    .IncrementRotation 90#
  End With
  Set PIC = Nothing

End Sub

こんな感じで。微妙に Excel とは違いますが、基本は一緒です。

この回答への補足

KenKen_SP さん ご回答有難う御座います。

何がしたいかと言うと
Word で「説明書」を作成したいのです。

少し具体的に言うと「保守指導案内書」を作成します。
「素人でも解るように作成して下さい」との客先依頼ですので、
写真入りで「保守指導案内書」をWord で作っています。

説明書(「保守指導案内書」)を作成するには
Excel より Word の方が作り易いし、見易いので、
Word を選びました。

ところが、Excel では写真のサイズをVBAで自由に
出来ましたが、Word で躓いた次第です。
(元のサイズ(デジカメ写真)は超デカイですので・・)

とりあえず、KenKen_SP さん への返答をしたかったので
補足で失礼します。
 これから、KenKen_SP さん のご回答を検討してみます。もし、補足・お礼の順番が反対でしたら、ごめんなさいです。

補足日時:2006/07/26 23:51
    • good
    • 0
この回答へのお礼

> With PIC
> .LockAspectRatio = msoTrue ' 縦横比を保つ
> ' ミリメートル指定でサイズを変更する場合(例:50mm)
> .Width = MillimetersToPoints(50) ''----この行でやりたい事ができました。
> ・・・・
> ・・・・

KenKen_SP さん 有難う御座います。

私はVBAに関して始めたばかりの者です。・・のでご迷惑も掛けます。
皆さんのご回答には感謝 々 です。

質問方法についても未熟かもしれませんが、その質問方法についても
ご教示下されば、幸いです。

有難う御座いました。

お礼日時:2006/07/27 00:48

> 「マクロの記録」で出来ないという事は


> つまり、Wordでは無理って考えれば良いのでしょうか。

VBA は「マクロの記録」では記録されないことも操作可能な場合がありますので、
「マクロの記録」で出来ない = Word では無理という結論にはなりません。

可能・不可能は基本的にヘルプの検索(機能的には貧弱ですが)を使って調べ
ます。今回なら、Width がキーワードになりますね。Width プロパティーのペー
ジで「対象」というリンクをクリックすると、「Shape」とありますので、Shape
オブジェクトに Width プロパティーがあることが分かります。

ヘルプの検索で情報をうまくひろえない場合は、VBE 画面で [F2]キーを押すと

  「オブジェクトブラウザ」

が開きますので、そこでキーワードを検索します。今回なら、Picture とか Width
辺りです。検索結果で該当しそうな項目を選択し、「?」ボタンをクリックする
とヘルプの検索機能ではヒットしなかったキーワードでも調べることができます。


> ...その質問方法についても...

> Wordへの写真挿入 
> サイズの変更 になりますと、(VBAで記述したいのに)

ご質問のタイトルと本文の内容が異なる、または微妙にずれていると回答の
ピントもぼやけてしまいがちです。タイトルはご質問趣旨を簡潔に盛り込み、
本文は具体例を示し、タイトルと一致した焦点に絞った内容を書いた方が、
的確かつ素早い回答が得られると思います。

今回のご質問では、写真の挿入がわからないのか、サイズの変更がわからない
のか不明瞭でした。ご質問のタイトルでは「写真の挿入」とあるのですが、
本文では WORD VBA での画像取扱い方法がわからない...との印象も受けるため、
全般をカバーする回答を書いておきました。

ご質問文タイトルで、「WORD VBA」、「写真」といったキーワードが入って
いるのはとても良いですね。さらに、今回のご質問の一番のポイント、

  「Word VBA 写真のサイズ変更(書式設定)について」

のようなタイトルだと回答される方や、同様の問題解決法を探している方に
とっても、さらに良いものになると思います。最近よく見かけますが、

  「Excel について」

このようなタイトルだと、本文を読むまで内容が分かりません。結果、本文を
読んでもらえる確率は低くなり、さらに、タイトルと本文が一致していない
と、回答意欲が削がれてしまいそうです。
    • good
    • 0
この回答へのお礼

KenKen_SP さん 再度のご回答ありがとうございます。

>可能・不可能は基本的にヘルプの検索(機能的には貧弱ですが)を使って調べます。

そうなのです。まず、ヘルプを検索するべきなのですが、
提出期限に追われて、VBAを勉強する時間が限られています。

・・かと言って手作業でしていては、
starsip「絶対間に合わないです。。いいですか?」
社長「よくない。。間に合わせろ。手伝いの人をやるから間に合わせろ」

でも、手伝いの人に手作業でやってもらっても絶対間に合いません。
VBAで作り易くしてあげないと・・

ある意味、「VBAを組んでいる時間があるなら、自分で全ての資料を作ればよいのでは」
と、考える日もあります。

でも、やはり自分一人で一日でやれる事は限りがあります。

ここまで書いて、starsip の愚痴みたいですので、やめます。

>ご質問のタイトルと本文の内容が異なる、または微妙にずれていると回答の
>ピントもぼやけてしまいがちです。タイトルはご質問趣旨を簡潔に盛り込み、
>本文は具体例を示し、タイトルと一致した焦点に絞った内容を書いた方が、
>的確かつ素早い回答が得られると思います。

解りやすい、ご回答ありがとうございます。気を付けます。
なるほどと思いました。

>全般をカバーする回答を書いておきました。

のめしですが、一番ありがたいです。
全て把握出来ますし、、解らないでいた事まで、「そうなんだ」と
質問内容と違う事で納得してみたり・・。

まとまりのつかない、お礼になってしまいましたが
ご指摘頂いた事、よく考えてみます。

KenKen_SP さん 有難う御座いました。

お礼日時:2006/07/27 23:17

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