|
>コンパイルエラー 型が一致しません
あー・・またまたすいません。
Me.Image1.Picture = LoadPicture("")
というように直して下さい。で、実際は
>合計8枚だして、それをそのまま
>プリントアウトすると、8枚の画像の入ったカタログにしたい
つまりサムネイルにしたいわけですね ? そーいうのは専用の画像処理ソフト
などでやるのが本来のやり方ですが、いちおうワークシートに直接並べるとして
Private Sub Worksheet_Change(ByVal Target As Range)
Dim MyF As String
Dim Cnt As Integer, Ans As Integer
Dim Lp As Single, Tp As Single, Wp As Single
With Target
If .Column > 1 Then Exit Sub
If IsEmpty(.Value) Then Exit Sub
If Not IsNumeric(.Value) Then Exit Sub
MyF = "D:\" & Int(.Value) & ".jpg"
If Dir(MyF) = "" Then
MsgBox "そのファイルは見つかりません", 48
Application.EnableEvents = False
Target.ClearContents: Target.Select
Application.EnableEvents = True
Exit Sub
End If
End With
Cnt = ActiveSheet.Pictures.Count
Lp = Range("B1").Left
Wp = Range("B1").Resize(, 2).Width
Select Case Cnt
Case 0: Tp = 0
Case 1 To 3
Lp = Cnt * Wp + Lp: Tp = 0
Case 4 To 7
Lp = (Cnt - 4) * Wp + Lp: Tp = Wp
Case Else
Application.EnableEvents = False
Target.ClearContents: Target.Select
Application.EnableEvents = True
Ans = MsgBox("画像ファイルは 8枚挿入済みです" & _
vbLf & "すべて破棄しますか", 36)
If Ans = 7 Then Exit Sub
ActiveSheet.Pictures.Delete: Exit Sub
End Select
With ActiveSheet.Pictures.Insert(MyF)
.Left = Lp: .Top = Tp
.Width = Wp: .Height = Wp
End With
End Sub
と、変更してみて下さい。
|
|