Excel VBA質問箱 IV

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

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


5735 / 76732 ←次へ | 前へ→

【76604】Re:画像の移動
発言  マナ  - 15/2/7(土) 13:54 -

引用なし
パスワード
   私も考えてみました。
元位置は、セルのコメントに記録するようにしています。
予め、画像には名前をつけておいてください。

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim r As Range
  Dim p As Picture
  Dim s As String
  Dim c As Range
  Dim v
 
  Set r = Range("A1:A10")

  If Intersect(Target, r) Is Nothing Then Exit Sub
  If Target.Count <> 1 Then Exit Sub
  
  On Error Resume Next
  Set p = Pictures(Target.Value)
  On Error GoTo 0
  
  If p Is Nothing Then
    MsgBox "その名前の画像はありません"
    Application.EnableEvents = False
    Application.Undo
    Application.EnableEvents = True
    Exit Sub
  End If
  
  Application.EnableEvents = False
  For Each c In r
    s = c.NoteText
    If s <> "" Then
      v = Split(s, ",")
      With Shapes(v(0))
        .Top = v(1)
        .Left = v(2)
      End With
    End If
    If c.Address <> Target.Address Then
      c.ClearComments
      c.ClearContents
    End If
  Next
  Application.EnableEvents = True
  
  Target.NoteText p.Name & "," & p.Top & "," & p.Left
  p.Top = Target.Top
  p.Left = Target.Width

End Sub

1 hits

【76601】画像の移動 vbaビギナー 15/2/6(金) 14:23 質問[未読]
【76602】Re:画像の移動 β 15/2/6(金) 19:49 発言[未読]
【76603】Re:画像の移動 β 15/2/6(金) 20:45 発言[未読]
【76606】Re:画像の移動 vbaビギナー 15/2/9(月) 8:33 お礼[未読]
【76604】Re:画像の移動 マナ 15/2/7(土) 13:54 発言[未読]
【76605】Re:画像の移動 マナ 15/2/7(土) 17:34 発言[未読]
【76607】Re:画像の移動 vbaビギナー 15/2/9(月) 8:37 お礼[未読]

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