Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Dúvidas sobre cálculos, funções simples e aninhadas, fórmulas matriciais, etc.
Por lcbispo
Posts
#66519
Bom dia Pessoal,

Estou precisando de uma ajudinha! Como vocês são feras... não terão problema em fazer uma vba, conforme planilha em anexo.

Grato pela ajuda de todos....
Você não está autorizado a ver ou baixar esse anexo.
Por RCA
#66520
Sub Demitido()

dim ultLinha as integer, linha as integer

ultLinha = Sheets("Cad1").Range("C1048576").end(xlup).row
for linha = 10 to ultLinha
if sheets("Cad1").range("I" & linha).value = "Demitido" then
Worksheets("Cad1").range("C" & linha & ":I" & linha).copy Worksheets("Cad2").range("C" & linha & ":I" & linha)
end if

End sub

Sou apenas um curioso em VBA, as acho que esse código pode resolver teu problema.
Por osvaldomp
#66521
Experimente:
Código: Selecionar todos
Sub ReplicaDemitidos()
  Application.ScreenUpdating = False
  Sheets("Cad2").Cells = ""
   On Error Resume Next
   ActiveSheet.ShowAllData
   On Error GoTo 0
   [C9:I9].AutoFilter 7, "DEMITIDO"
   If ActiveSheet.AutoFilter.Range.Columns(9).SpecialCells(12).Count > 1 Then
     Range("C9:I" & Cells(Rows.Count, 3).End(3).Row).Copy Sheets("Cad2").[A1]
   End If
   ActiveSheet.ShowAllData
End Sub
Por osvaldomp
#66527
lcbispo escreveu: 25 Ago 2021 às 12:01 Osvaldomp, tem como copiar e colar na planilha cad2 e excluir da planilha cad1
Sim, veja abaixo. Porém isso vai provocar erro nas fórmulas da coluna C.
Acrescente a linha em vermelho conforme abaixo.
Range("C9:I" & Cells(Rows.Count, 3).End(3).Row).Copy Sheets("Cad2").[A1]
Range("C10:I" & Cells(Rows.Count, 3).End(3).Row).EntireRow.Delete
End If
Por lcbispo
Posts
#66531
Osvaldo, uma duvida:
- Quando eu faço a exclusão , o codigo deleta todas as informações da planilha cad2 e deixa a ultima informação. Teria que ficar todas as informações.
Por osvaldomp
#66532
Utilize este abaixo no lugar do anterior.
Inicialmente coloque na Cad2 somente os cabeçalhos na linha 1, a partir de A1.
Código: Selecionar todos
Sub ReplicaDemitidos()
  Application.ScreenUpdating = False
   On Error Resume Next
   ActiveSheet.ShowAllData
   On Error GoTo 0
   [C9:I9].AutoFilter 7, "DEMITIDO"
   If ActiveSheet.AutoFilter.Range.Columns(9).SpecialCells(12).Count > 1 Then
    Range("C10:I" & Cells(Rows.Count, 3).End(3).Row).Copy Sheets("Cad2").Cells(Rows.Count, 1).End(3)(2)
    Range("C10:I" & Cells(Rows.Count, 3).End(3).Row).EntireRow.Delete
   End If
   ActiveSheet.ShowAllData
End Sub
Por lcbispo
Posts
#66548
Osvaldo, Bom dia meu amigo!
Quando faço a exclusão pela primeira vez para a planilha cad2 vai sem formula, até ai perfeito! mas quando lanço uma nova demissão e faço a exclusão ele vai com formulas.
Por osvaldomp
#66549
Verdade, sorry.

Substitua esta linha
Código: Selecionar todos
Range("C10:I" & Cells(Rows.Count, 3).End(3).Row).Copy Sheets("Cad2").Cells(Rows.Count, 1).End(3)(2)
#
por estas duas
Código: Selecionar todos
Range("C10:I" & Cells(Rows.Count, 3).End(3).Row).Copy
Sheets("Cad2").Cells(Rows.Count, 1).End(3)(2).PasteSpecial xlValues
#
Formate manualmente as colunas D e E da Cad2 como data, se necessário.
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord