2016-04-13 17 views
1

細胞内に画像のファイル名を挿入するマクロ:絵 私はこのコードを使用してきましたし、私は2つの機能を追加するためにいくつかの助けが必要

  • がへのリンクを作成]を選択したときにセルに

    1. 挿入PICの名前をこの画像に続く/picname.jpg

    これは可能ですか? 他の事は、私が実際にいくつかの助けをいただければ幸いです..私は

    If Target = "$D$1:$D$10" Then 
    

    ような何かをしようとしました。しかし動作しますしない細胞 の範囲で

    これを使用することです。

    Private Sub Worksheet_SelectionChange(ByVal Target As Range) 
        If Target.Address = "$D$1" Or Target.Address = "$D$2" Then 
         fName = Application.GetOpenFilename("Picture files (*.jpg;*.gif;*.bmp;*.tif), *.jpgs;*.gif;*.bmp;*.tif", , _ 
    "Select picture to insert") 
         If fName = "False" Then Exit Sub 
         ActiveSheet.Pictures.Insert(fName).Select 
         With Selection.ShapeRange 
          .LockAspectRatio = msoFalse 
          .Height = ActiveCell.Height 
          .Width = ActiveCell.Width 
          .Top = ActiveCell.Top 
          .Left = ActiveCell.Left 
         End With 
        End If 
    End Sub 
    
  • 答えて

    0

    私はあなたの写真のファイル名変数はfNameをあると仮定しています、あなたはすでにも変数として、あなたの画像ファイルのパスを持っていること(のは、それははpNameと呼ばれると仮定します):


    を挿入するにはあなたが使用することができます(ただし、これらに限定されない)細胞内へのファイル名

    ThisWorkbook.Sheets("SheetName").Range("A1").Value = fName 
    

    または

    ActiveSheet.Range("A1").Value = fName 
    

    ファイルへのリンクを挿入するには、あなたは、このようなターゲットについては

    ActiveSheet.Range("A1").Formula = "=HYPERLINK(""" & pName & fName & "")" 
    

    としてハイパーリンク式を挿入することができ、あなたは目標を確実にするためにIF文を使用することができ以内であります必要なセル範囲:

    If Target.Column = 4 And Target.Row <= 10 Then 
    
        '// Your code here 
    
    End If 
    
    関連する問題