Olá, quanto a pagar eu ja falei que se quizer que eu pague não há problema algum pra eu pagar. Quando ao script anterior que foi resolvido ele tirava da consolidado e colava em cada planilha. esse ele vai copiar e colar na mesma planilha. Eu tava querendo fazer um curso de vba presencial mas nao tem em minha cidade esses vídeos eu olho não saio do canto. quando foi executar da erro faço as mudancas mas nao consigo mas se é código que voces querem vou fazer aqui mesmo sabendo que nao vai dar certo.
Eis o código que tentei e não deu certo:
Sub consolidar()
Dim Linha As Long
Dim sLinSheets As Long
Dim sRG As Range
Dim sCodigo
Dim sRow As Long
Dim sSht As Worksheet
Dim ShtCONSOLIDADO As Worksheet
Dim sRgColunas
Dim sRotulo
Dim iLinRotulo
Dim Col As String
Dim wb As Workbook
Set wb = ThisWorkbook
Set ShtCONSOLIDADO = wb.Sheets("100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119 120")
Linha = ShtCONSOLIDADO.Range("100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119 120").End(xlDown).Row
Set sRG = ShtCONSOLIDADO.Range("D9:" & "D" & Linha)
For Each x In sRG
sRow = x.Row
Set sRgColunas = ShtCONSOLIDADO.Range("E3" & sRow & ", E5" & sRow & ",D1" & sRow)
For Each i In sRgCélula
iLinRotulo = 2 'Linha do Cabeçalho
'Verificamos se o avlor é nulo
If i.Value <> "" Then
'Montamos a Letra das Colunas
Col = Split(i.Address(1, 0), "$")(0)
'Linha dos Rotulos (Cabeçalho)
sRotulo = Range(Col & iLinRotulo).Address(0, 0)
'Capturamos o codigo
sCodigo = x.Value
sRow = i.Row
'Montamos o nome da aba como o sCodigo
Set sSht = wb.Sheets(CStr(sCodigo))
sLinSheets = sSht.Range("D9").End(xlDown).Row + 1
'Copiamos para as abas
ShtCONSOLIDADO.Range(sRotulo).Copy Destination:=sSht.Range("d3" & sLinSheets)
ShtCONSOLIDADO.Range(i.Address).Copy Destination:=sSht.Range("d5" & sLinSheets)
'Na instrução abaixo estou supondo que a data que comentou seria da Coluna L -DATA ENVIO
'Se não for, é só ajustar
ShtCONSOLIDADO.Range("D1" & sRow).Copy Destination:=sSht.Range("F9" & sLinSheets)
End If
Next i
Next
End Sub
na verdade eu gostaria muito de não precisar de ninguém pra criar os códigos, mas assim é a vida né, cada um tem seus dons. Se não puder fazer não há problema, porém nunca me neguei a pagar caso quizece inclusive deixei até meu telefone, e vou deixar aqui também (84) 996270227, pela internet procurei por um vba freelancer e não consegui, apenas golpistas e gente que não trabalhava de verdade na área, não sendo muito caro, não sou rico nem muito menos com esssa inteligencia que muitos possuem, mas antes de pedir tento varias vezes mas não consigo entender.
Peço desculpas pelo incomodo.
Postado : 08/02/2018 6:20 am