我試圖寫一個代碼,其中檢查我的工作簿中的每個表的信息後輸入圖像我。自從我加入每個給它採空工作,並開始給我這個編譯錯誤消息的代碼,該代碼作品,未經對於每一個,但我希望它是自動的。 u人能幫忙嗎?編譯錯誤:參數不可選的Excel VBA
EN:我想放在一起,它檢查所有表和插入圖像作爲一個給定的單元格中數據的代碼。代碼工作不循環,但希望它是完全自動化,並提供了包括對於每個出現此編譯錯誤。如果你能幫助我,這是感激。
Sub ForEachWs()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
Call Worksheet_SelectionChange
Next ws
End Sub
Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Target.Column = 2 And Target.Row = 1 Then ' onde clicar para buscar imagem
BuscarImagemTavares (Target.Value)
End If
End Sub
Sub BuscarImagemTavares(Produto As String)
On Error Resume Next
'Autor: Tavares
If Range("B2") = "ok" Then 'Verifica se celula B2 tem ok se sim não insere a imagem novamente
Exit Sub
End If
Dim Imagem, CaminhoImagem As String
If Len(Produto) = 3 Then 'acrescenta 00 antes do cod do produto
Produto = "00" & Produto
End If
If Len(Produto) = 4 Then 'acrescenta 0 antes do cod do produto
Produto = "0" & Produto
End If
Imagem = Dir("\\Clfssrvfar\ENGENHARIA\GESTAO_DE_PROJETOS\04. FOLLOWUP\09. ARQUIVOS PARA FERRAMENTAS\09.1 IMAGENS\09.1.2 IMAGENS PRODUTOS\" & Produto & "*", vbDirectory)
CaminhoImagem = "\\Clfssrvfar\ENGENHARIA\GESTAO_DE_PROJETOS\04. FOLLOWUP\09. ARQUIVOS PARA FERRAMENTAS\09.1 IMAGENS\09.1.2 IMAGENS PRODUTOS\" & Imagem
With ActiveSheet.Pictures.Insert(CaminhoImagem) 'Mostra Imagem
'Define tamanho e posição da imagem
With .ShapeRange
.Width = 75
.Height = 115
.Top = 7
.Left = 715
'*above it's me trying to make white background transparent*
'With .PictureFormat
'.TransparentBackground = True
'.TransparencyColor = RGB(255, 0, 0)
'End With
'.Fill.Visible = True
'End With
'ActiveSheet.Shapes.Range(Array("Picture 2")).Select
'Application.CommandBars("Format Object").Visible = False
End With
End With
If CaminhoImagem <> "" Then 'Após inserir imagem informa "ok" na B2 para não inserir de novo
Range("B2").Select
ActiveCell.FormulaR1C1 = "OK"
End If
End Sub
你應該嘗試寫在英格爾斯的問題。如果你不知道如何使用翻譯,有人將編輯可能的錯誤。 –
Неставатакатука。 – Vityata
有ü去,現在英格爾。 –