Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


10085 / 13644 ツリー ←次へ | 前へ→

【23782】カメラ機能をマクロ記録出来ない ぴかる 05/4/4(月) 10:30 質問[未読]
【23783】Re:カメラ機能をマクロ記録出来ない Jaka 05/4/4(月) 10:39 回答[未読]
【23784】Re:カメラ機能をマクロ記録出来ない ぴかる 05/4/4(月) 11:11 お礼[未読]
【23785】もうひとつ質問させて下さい。 ぴかる 05/4/4(月) 11:57 質問[未読]
【23787】Re:もうひとつ質問させて下さい。 Kein 05/4/4(月) 12:39 発言[未読]
【23788】Re:もうひとつ質問させて下さい。 Jaka 05/4/4(月) 12:39 回答[未読]
【23789】Re:もうひとつ質問させて下さい。 ぴかる 05/4/4(月) 13:11 お礼[未読]

【23782】カメラ機能をマクロ記録出来ない
質問  ぴかる  - 05/4/4(月) 10:30 -

引用なし
パスワード
   カメラ機能を使って日報ソフトを作成したのですが、処理速度が格段に遅くなってしまいどうしようもありません。以前にも同じ事がおこり、その時は対応出来たのですが今回はダメでした。そこで必要な時のみマクロでカメラ機能を使おうと考えたのですが、マクロ記録が出来ないんですよ。マクロ記録をしてカメラ機能操作を行っても、図が貼り付けられません。これって仕様的な事で無理なのでしょうか?ご存じの方、お見えになりましたらよろしくお願い致します。

【23783】Re:カメラ機能をマクロ記録出来ない
回答  Jaka  - 05/4/4(月) 10:39 -

引用なし
パスワード
   ずっと前のなんで覚えてないけど、たぶんこれでいけたと思う。

Sub Camera()
  With WorkSheets("Sheet1")
    .Range("A100:B103").Copy
    .Pictures.Add .Range("B1").Left, .Range("B1").Top, 0, 0
  End With
End Sub    

↓うまく行く時もあるけど、ろくに動かないと思います。
Sub カメラもどき()
  With ActiveSheet.Pictures.Insert("C:\WINDOWS\エジプト.bmp")
    .Top = Range("D3").Top
    .Left = Range("D3").Left
    .Select
  End With
  'ExecuteExcel4Macro "FORMULA(""=R1C1:R10C2"")"
  ExecuteExcel4Macro "FORMULA(""=" & Range("A1:B10").Address(, , xlR1C1) & """)"
  DoEvents
  With Selection
    .ShapeRange.Fill.Visible = msoTrue
    .ShapeRange.Fill.ForeColor.SchemeColor = 9
  End With
  ActiveCell.Activate
End Sub

【23784】Re:カメラ機能をマクロ記録出来ない
お礼  ぴかる  - 05/4/4(月) 11:11 -

引用なし
パスワード
   Jakaさん、こんにちは。

>ずっと前のなんで覚えてないけど、たぶんこれでいけたと思う。
>
>Sub Camera()
>  With WorkSheets("Sheet1")
>    .Range("A100:B103").Copy
>    .Pictures.Add .Range("B1").Left, .Range("B1").Top, 0, 0
>  End With
>End Sub    
バッチリです。うまくカメラ機能として動作してくれました。
非常に助かりました。これでうまく日報ソフトを作成出来そうです。
ありがとうございました。

>↓うまく行く時もあるけど、ろくに動かないと思います。
>Sub カメラもどき()
>  With ActiveSheet.Pictures.Insert("C:\WINDOWS\エジプト.bmp")
こちらは、残念ながらPCの環境の問題で動作しませんでした。
でも色んなパターンをご紹介頂きまして非常に感謝しております。

【23785】もうひとつ質問させて下さい。
質問  ぴかる  - 05/4/4(月) 11:57 -

引用なし
パスワード
   >>Sub Camera()
>>  With WorkSheets("Sheet1")
>>    .Range("A100:B103").Copy
>>    .Pictures.Add .Range("B1").Left, .Range("B1").Top, 0, 0
>>  End With
>>End Sub    
上記マクロ実行後、その図形の編集(名前の変更・線の変更・移動)をしようと思ってます。今の状態はその図形がセレクト状態でない為、編集をうまくする事が自分の実力では出来ません。図形セレクトでマクロが終わる様に出来るでしょうか?申し訳ありませんが、よろしくお願い致します。

【23787】Re:もうひとつ質問させて下さい。
発言  Kein  - 05/4/4(月) 12:39 -

引用なし
パスワード
   >.Pictures.Add .Range("B1").Left, .Range("B1").Top, 0, 0


.Pictures.Add(.Range("B1").Left, .Range("B1").Top, 0, 0).Select

ぐらいで出来るはずですが、図形としてのコピーなら CopyPictureメソッドを使って
WorksheetにPasteするコードになるはずです。

【23788】Re:もうひとつ質問させて下さい。
回答  Jaka  - 05/4/4(月) 12:39 -

引用なし
パスワード
   こんな感じ。

.Pictures.Add(.Range("B1").Left, .Range("B1").Top, 0, 0).Name = "お名前"

【23789】Re:もうひとつ質問させて下さい。
お礼  ぴかる  - 05/4/4(月) 13:11 -

引用なし
パスワード
   Keinさん、Jakaさん、こんにちは。

ありがとうございました。うまく行きました。
実力不足痛感です。もっとレベルアップしなければ・・・。

10085 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free