Ir ao conteúdo
  • Cadastre-se

diego_janjao

Membro Pleno
  • Posts

    629
  • Cadastrado em

  • Última visita

  1. Boa tarde, tudo bem? A empresa que trabalho precisa de vários dados no Google Sheets, online e no drive, porém, vários outros arquivos, por suas particularidades, são planilhas do excel e na rede... Diariamente eu preciso ficar colocando os dados no Google Planilhas... Teria como, via VBA, ao preencher as células na coluna F, automaticamente copiar a linha e colar na planilha do Drive? Preciso que copie do intervalo B até F e cole na planilha do drive: https://docs.google.com/spreadsheets/d/1dEJfkt3ToCesrkfiQ2jnUSd5mSVmxWZ7u-po1ZlCfVc/edit?usp=sharing Segue a planilha em anexo e o link da planilha na rede: https://docs.google.com/spreadsheets/d/1dEJfkt3ToCesrkfiQ2jnUSd5mSVmxWZ7u-po1ZlCfVc/edit?usp=sharing Gestão de Ocorrências.zip
  2. Acredito que o código abaixo resolva. PS: Fiz somente para despesas Private Sub Worksheet_change(ByVal Target As Range) If Target.Column = 5 And Target.Value <> "" And Cells(Target.Row, 3) = "DESPESA" Then 'PROCV DE CLIENTE Application.EnableEvents = False Cells(Target.Row, 5).Value = Target.Value * (-1) End If End Sub
  3. Basole, muito obrigado pela ajuda... Mas acho que me expressei mal, eu ainda preciso que o comando de criação de pasta já existente continue, agora eu preciso que a pasta do código anterior, salve dentro da pasta que sua linha de código criou. Tentei modificar aqui mas não deu certo. ---------------------------------------------------------------------------------------------------------- EDIT: Modifiquei a ordem aqui e deu certo, ficou assim: Private Sub Worksheet_change(ByVal Target As Range) Dim Pasta As Workbook Dim raiz As Object, save Set raiz = CreateObject("Scripting.FileSystemObject") On Error Resume Next On Error GoTo aviso1 If Target.Column = 7 And Target.Value <> "" Then 'PROCV DE CLIENTE Application.ScreenUpdating = False Cells(Target.Row, 5).Value = Date 'coloca data na coluna b Cells(Target.Row, 8).Value = WorksheetFunction.VLookup(Cells(Target.Row, 7), Planilha4.Range("A2:I15000"), 3, False) 'Coloca CLIENTE Cells(Target.Row, 9).Value = WorksheetFunction.VLookup(Cells(Target.Row, 7), Planilha4.Range("A2:I15000"), 4, False) 'Coloca UF Cells(Target.Row, 71).Value = WorksheetFunction.VLookup(Cells(Target.Row, 7), Planilha4.Range("A2:I15000"), 5, False) 'Coloca DIVISÃO save = ThisWorkbook.Path & "\" & VBA.Month(Cells(Target.Row, 5).Value) & "." & VBA.StrConv(VBA.MonthName(VBA.Month(Cells(Target.Row, 5).Value)), 3) If Not raiz.FolderExists(save) Then raiz.CreateFolder (save) Application.ScreenUpdating = True End If End If If Target.Column = 10 And Target.Value <> "" Then 'PROCV DE PRODUTO Application.ScreenUpdating = False Cells(Target.Row, 11).Value = WorksheetFunction.VLookup(Cells(Target.Row, 10), Planilha6.Range("A2:D15000"), 2, False) 'Coloca PRODUTO Cells(Target.Row, 14).Value = WorksheetFunction.VLookup(Cells(Target.Row, 10), Planilha6.Range("A2:D15000"), 3, False) 'Coloca FÁBRICA Cells(Target.Row, 69).Value = WorksheetFunction.VLookup(Cells(Target.Row, 10), Planilha6.Range("A2:D15000"), 4, False) 'Coloca LINHA save2 = ThisWorkbook.Path & "\" & VBA.Month(Cells(Target.Row, 5).Value) & "." & VBA.StrConv(VBA.MonthName(VBA.Month(Cells(Target.Row, 5).Value)), 3) & "\" & Format(Cells(Target.Row, 4).Value, "000000") & " - " & Cells(Target.Row, 8).Value & " - " & Cells(Target.Row, 11).Value If Not raiz.FolderExists(save2) Then raiz.CreateFolder (save2) End If FileCopy ThisWorkbook.Path & "\FOR004 - Não conformidade.xlsx", _ ThisWorkbook.Path & "\" & VBA.Month(Cells(Target.Row, 5).Value) & "." & VBA.StrConv(VBA.MonthName(VBA.Month(Cells(Target.Row, 5).Value)), 3) & "\" & Format(Cells(Target.Row, 4).Value, "000000") & " - " & Cells(Target.Row, 8).Value & " - " & Cells(Target.Row, 11).Value & "\SAC " & Format(Cells(Target.Row, 4).Value, "000000") & " - Investig.xlsx" Set Pasta = Workbooks.Open(ThisWorkbook.Path & "\" & VBA.Month(Cells(Target.Row, 5).Value) & "." & VBA.StrConv(VBA.MonthName(VBA.Month(Cells(Target.Row, 5).Value)), 3) & "\" & Format(Cells(Target.Row, 4).Value, "000000") & " - " & Cells(Target.Row, 8).Value & " - " & Cells(Target.Row, 11).Value & "\SAC " & Format(Cells(Target.Row, 4).Value, "000000") & " - Investig.xlsx", _ True) Pasta.ActiveSheet.[G5] = Format(Cells(Target.Row, 4).Value, "000000") Pasta.save Pasta.Close Application.ScreenUpdating = True End If Exit Sub aviso1: MsgBox "Não foi possível localizar o item", vbOKOnly, "Atendimento ao Cliente Doremus" End Sub
  4. Pessoal, boa tarde. Eu tenho uma planilha da qual ela cria uma pasta de acordo com o cliente e produto e coloca um arquivo dentro desta pasta, porém, eu gostaria que ela criasse uma pasta de acordo com o mês no formato "01.Janeiro" e colocasse essas pastas lá dentro, mas eu não estou conseguindo a parte de criar a pasta dos meses e consequentemente colocar as novas pastas dentro. Private Sub Worksheet_change(ByVal Target As Range) Dim Pasta As Workbook Dim raiz As Object, save Set raiz = CreateObject("Scripting.FileSystemObject") On Error Resume Next On Error GoTo aviso1 If Target.Column = 7 And Target.Value <> "" Then 'PROCV DE CLIENTE Application.ScreenUpdating = False Cells(Target.Row, 5).Value = Date 'coloca data na coluna b Cells(Target.Row, 8).Value = WorksheetFunction.VLookup(Cells(Target.Row, 7), Planilha4.Range("A2:I15000"), 3, False) 'Coloca CLIENTE Cells(Target.Row, 9).Value = WorksheetFunction.VLookup(Cells(Target.Row, 7), Planilha4.Range("A2:I15000"), 4, False) 'Coloca UF Cells(Target.Row, 71).Value = WorksheetFunction.VLookup(Cells(Target.Row, 7), Planilha4.Range("A2:I15000"), 5, False) 'Coloca DIVISÃO Application.ScreenUpdating = True End If If Target.Column = 10 And Target.Value <> "" Then 'PROCV DE PRODUTO Application.ScreenUpdating = False Cells(Target.Row, 11).Value = WorksheetFunction.VLookup(Cells(Target.Row, 10), Planilha6.Range("A2:D15000"), 2, False) 'Coloca PRODUTO Cells(Target.Row, 14).Value = WorksheetFunction.VLookup(Cells(Target.Row, 10), Planilha6.Range("A2:D15000"), 3, False) 'Coloca FÁBRICA Cells(Target.Row, 69).Value = WorksheetFunction.VLookup(Cells(Target.Row, 10), Planilha6.Range("A2:D15000"), 4, False) 'Coloca LINHA save = ThisWorkbook.Path & "\" & Format(Cells(Target.Row, 4).Value, "000000") & " - " & Cells(Target.Row, 8).Value & " - " & Cells(Target.Row, 11).Value If Not raiz.FolderExists(save) Then raiz.CreateFolder (save) End If FileCopy ThisWorkbook.Path & "\FOR004 - Não conformidade.xlsx", _ ThisWorkbook.Path & "\" & Format(Cells(Target.Row, 4).Value, "000000") & " - " & Cells(Target.Row, 8).Value & " - " & Cells(Target.Row, 11).Value & "\SAC " & Format(Cells(Target.Row, 4).Value, "000000") & " - Investig.xlsx" Set Pasta = Workbooks.Open(ThisWorkbook.Path & "\" & Format(Cells(Target.Row, 4).Value, "000000") & " - " & Cells(Target.Row, 8).Value & " - " & Cells(Target.Row, 11).Value & "\SAC " & Format(Cells(Target.Row, 4).Value, "000000") & " - Investig.xlsx", _ True) Pasta.ActiveSheet.[G5] = Format(Cells(Target.Row, 4).Value, "000000") Pasta.save Pasta.Close Application.ScreenUpdating = True End If Exit Sub aviso1: MsgBox "Não foi possível localizar o item", vbOKOnly, "Atendimento ao Cliente Doremus" End Sub De antemão, agradeço a quem ajudar. SAC.rar
  5. @osvaldomp verifiquei aqui na empresa (trabalho a noite) e a fórmula não está levando em consideração a palavra correto. Independentemente do que esteja na coluna Status, mesmo que retornando vazio, ele bloqueia a linha. Há como modificar?
  6. @osvaldomp funcionou perfeitamente. mais uma vez muito obrigado
  7. boa tarde, pessoal. Preciso de uma ajuda com VBA. Por necessidade da empresa, preciso que quando o usuário digitar todos os campos de uma planilha e o status tiver a palavra "CORRETO", essa linha automaticamente fique bloqueada e sem a opção de selecionar células no bloqueio. poderiam me ajudar? Segue planilha de exemplo: Pasta1.zip Muito obrigado de antemão.
  8. @Lucas Eduardo2019 fiz a alteração e acredito que esteja conforme desejado.
  9. @Lucas Eduardo2019 fiz uma atualização lá e acredito que esteja funcional. https://docs.google.com/spreadsheets/d/1MR2FfN_3AWdUD1xJgVAMd16eJ-evio4wQ6OJfGvtxHQ/edit#gid=0
  10. @osvaldomp muito obrigado! Exatamente o que eu precisava!
  11. Pessoal, eu criei uma planilha para facilitar a criação dos relatórios de análises para os analistas mas estou com problemas: No meu PC do trabalho eu consegui colocar um calendário através do Microsoft MouthView mas no PC dos analistas não tem o arquivo para adicionar isso, e o T.I. não quer adicionar, enfim, o que eu preciso: Ao colocar a data na TextBox de Data, as Labels Lote e Validade se atualizem. Onde a Label validade será igual ao valor do TextBox + 59 dias e o label Lote será o dia Juliano da Data do TextBox, ou seja, Lote = Data da TextBox - 01/01/do ano da TextBox. alguém conseguiria me ajudar? Criar Laudo.zip
  12. @Anderson Bernardi coloque essa fórmula em D11: =INDIRETO(CONCATENAR("'";A11;"'!";"$C$6")) e depois em A11 escolha o nome de um cliente e verifique se está do jeito que deseja. Caso esteja correto, basta editar na fórmula o endereço ("$C$6") para os endereços que você usa, após isso é só ir escolhendo o fornecedor na coluna A que nos demais funcionarão corretamente.
  13. @Patropi Perfeito!! Era exatamente o que eu precisava. Eu até consegui montar algo mas dependia que fosse digitado um número, com textos não funcionavam... Além do mais o código estava beeeeeeem maior! Mais uma vez, muito obrigado, Patropi.
  14. @Patropi muito obrigado pela ajuda. Mas é para apenas adicionar a data atual na coluna B quando mexerem na coluna C... Exemplo: Se escolherem Produto 2 em C7, a célula B7 seria 31/07/2019. Como se fosse um SE(C7<>"";B7=hoje();"") Mas que a data ficasse fixa e não variasse com a mudança do dia.
  15. Pessoal, boa noite. O pessoal de onde trabalho está "trapaceando" nos documentos que eles deveriam ter enviado em X data, e para impossibilitar isso, eu pensei na seguinte ação: Quando escolherem/alterarem o produto, a célula a esquerda fixará a data dessa ação. Na maioria das vezes a célula sairá de um valor em branco para um texto: Eu tentei algumas coisas com o VBA mas não obtive sucesso... Segue a planilha: fixar datas.xlsx Obrigado.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...