Boa Tarde!
Visualizei o erro... que é a cópia das células com fórmula que tem resultado "vazio" o Excel está copiando resultado vazio das fórmulas como valor "vazio" (fazendo se passar que a célula tem valor)
para corrigir isto, tem muitas formas, mas uma delas, simples, é adicionado valor a células vazias contadas e apagando esses valores, para torná-las realmente vazias.
Assim, vc pode fazer as seguintes substituições (onde insiro valor */\*/\* e os apago depois):
1ª Sheet
' GRUPO - PRODUTOS - MARCA - PROD C/
'Corrigindo células vazias
Linha = Range("D1048576").End(xlUp).Row + 1
Range("D1:G" & Linha).Select
Selection.Replace What:="", Replacement:="*/\*/\*", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="*/\*/\*", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
'Fim Correção Células Vazias
Sheets("INSERIR_PRODUTOS").Select
Range("E6:H15").Copy
Sheets("ENTRADA_PRODUTOS").Select
Linha = Range("D1048576").End(xlUp).Row + 1
Range("D" & Linha).PasteSpecial xlPasteValues
-----------------------------------------
2ª Sheet
' GRUPO & PRODUTOS
'Corrigindo células vazias
Linha = Range("D1048576").End(xlUp).Row + 1
Range("D1:F" & Linha).Select
Selection.Replace What:="", Replacement:="*/\*/\*", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="*/\*/\*", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
'Fim Correção Células Vazias
Sheets("INSERIR_PRODUTOS").Select
Range("E6:F15").Copy
Sheets("VALOR_VENDA").Select
Linha = Range("D1048576").End(xlUp).Row + 1
Range("D" & Linha).PasteSpecial xlPasteValues
Postado : 04/08/2020 1:38 pm