Ich versuche, einen Code, in dem ein Eingangsbild I nach der Überprüfung der Informationen in jedem Blatt meiner Arbeitsmappe zu schreiben. Da ich für jeden zu dem Code hinzugefügt, um es stoped arbeiten und begann mir diese Kompilierung Fehlermeldung geben, funktioniert der Code ohne die For Each, aber ich mag es automatisch sein. Kann u Jungs helfen?Compile Fehler: Argument nicht optional Excel VBA
DE: Ich versuche, zusammen einen Code zu setzen, wo sie alle Blätter überprüft und fügt das Bild als die Daten in einer bestimmten Zelle. Der Code funktioniert ohne die Schleife, sondern wollen, dass es vollständig automatisiert und zur Verfügung gestellt werden, dass die For Each enthält diese Zusammenstellung Fehler angezeigt. Wenn Sie mir dabei helfen kann, ist es dankbar.
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
sollten Sie versuchen, die Frage in Alemán zu schreiben. Wenn Sie nicht sicher sind, wie, mit dem Übersetzer und jemand wird die möglichen Fehler bearbeiten. –
Не става така тука. – Vityata
Es u gehen, jetzt Alemão. –