Excel VBA質問箱 IV

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

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


5737 / 76735 ←次へ | 前へ→

【76605】Re:画像の移動
発言  マナ  - 15/2/7(土) 17:34 -

引用なし
パスワード
   画像名の入力をリストから選択するようにしました
入力値削除で、元の位置に戻せるようにしました

Option Explicit

Const myAdr As String = "A1:A10"


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(myAdr)

  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 Target.Value <> "" Then
    If p Is Nothing Then
      MsgBox "その名前の画像はありません"
      Application.EnableEvents = False
      Application.Undo
      Application.EnableEvents = True
      Exit Sub
    End If
  End If
  
  Application.EnableEvents = False
  For Each c In r
    s = c.NoteText
    If s <> "" Then
      v = Split(s, ",")
      With Pictures(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
  
  If Target.Value = "" Then
    Target.ClearComments
    Exit Sub
  End If
  
  Target.NoteText p.Name & "," & p.Top & "," & p.Left
  p.Top = Target.Top
  p.Left = Target.Width

End Sub


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  Dim r As Range
  Dim p As Picture
  Dim myList

  Set r = Range(myAdr)

  If Intersect(Target, r) Is Nothing Then Exit Sub
  If Target.Count <> 1 Then Exit Sub

  For Each p In Pictures
    myList = myList & "," & p.Name
  Next

  With r.Validation
    .Delete
    .Add Type:=xlValidateList, Formula1:=myList
    .ShowError = False
    .IgnoreBlank = True
  End With
  
End Sub

0 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 お礼[未読]

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