Ir ao conteúdo
  • Cadastre-se

Schiavinatto

Membro Pleno
  • Posts

    150
  • Cadastrado em

  • Última visita

Tudo que Schiavinatto postou

  1. Olá @FILIPE_NERI, explica o que a macro deve fazer? Fez pelo gravador de macro?
  2. O aviso de erro é claro. Os dados inseridos na célula C28 violam as regras de validação de dados definidas nesta célula. Para um palpite melhor, só vendo o arquivo.
  3. Ola @RAIMUNDO LIMA DE ARAUJO, em sua planilha, modelo, não tem extra a calcular, a saída max. foi 18h.
  4. Sugestão em: https://ask.libreoffice.org/t/macro-para-colocar-data-e-hora-automaticos-fixo/81142/2
  5. Ola @hkss, poste sua dúvida em https://ask.libreoffice.org/c/brazilian-portuguese/9, é local de ajuda especifica para LibreOffice.
  6. Olá @fabio rodrigues, só consegui ver a macro de escrever o valor por extenso, tenho essa em Basic: ' Por Extenso Function NExtenso(byval dValor as double) as string 'https://wiki.documentfoundation.org/Extensions/Projects/NumExtenso/pt-br 'desenvolvida por: Noelson Alves Duarte e Gustavo Buzzatti Pacheco 'O############################################################################O Function NExtenso(byval dValor as double) as string 'O############################################################################O nextenso=extenso(dvalor,"reais", "real") End function Function Extenso(ByVal Valor As Double, ByVal MoedaPlural As String, ByVal MoedaSingular As String) As String Dim StrValor As String, Negativo As Boolean Dim Buf As String, Parcial As Integer Dim Temp as string Dim Posicao As Integer, Unidades Dim Dezenas, Centenas, PotenciasSingular Dim PotenciasPlural Negativo = (Valor < 0) Valor = Abs((Valor)) If Valor Then Unidades = Array(vbNullString, "um", "dois", "três", "quatro", "cinco", "seis", "sete", "oito", "nove", "dez", "onze", "doze", "treze", "quatorze", "quinze", "dezesseis", "dezessete", "dezoito", "dezenove") Dezenas = Array(vbNullString, vbNullString, "vinte", "trinta", "quarenta", "cinquenta", "sessenta", "setenta", "oitenta", "noventa") Centenas = Array(vbNullString, "cento", "duzentos", "trezentos", "quatrocentos", "quinhentos", "seiscentos", "setecentos", "oitocentos", "novecentos") PotenciasSingular = Array(vbNullString, " mil", " milhão", " bilhão", " trilhão", " quatrilhão") PotenciasPlural = Array(vbNullString, " mil", " milhões", " bilhões", " trilhões", " quatrilhões") StrValor = Left(Format(Valor, String(18, "0") & ".000"), 18) For Posicao = 1 To 18 Step 3 Parcial = Val(Mid(StrValor, Posicao, 3)) If Parcial Then If Parcial = 1 Then Buf = "um" & PotenciasSingular((18 - Posicao) \ 3) ElseIf Parcial = 100 Then Buf = "cem" & PotenciasSingular((18 - Posicao) \ 3) Else Buf = Centenas(Parcial \ 100) Parcial = Parcial Mod 100 If Parcial <> 0 And Buf <> vbNullString Then Buf = Buf & " e " End If If Parcial < 20 Then Buf = Buf & Unidades(Parcial) Else Buf = Buf & Dezenas(Parcial \ 10) Parcial = Parcial Mod 10 If Parcial <> 0 And Buf <> vbNullString Then Buf = Buf & " e " End If Buf = Buf & Unidades(Parcial) End If Buf = Buf & PotenciasPlural((18 - Posicao) \ 3) End If If Buf <> vbNullString Then If Temp <> vbNullString Then Parcial = Val(Mid(StrValor, Posicao, 3)) If Posicao = 16 And (Parcial < 100 Or _ (Parcial Mod 100) = 0) Then Temp = Temp & " e " Else Temp = Temp & ", " End If End If Temp = Temp & Buf End If End If Next If Temp <> vbNullString Then If Negativo Then Temp = "menos " & Temp End If If Int(Valor) = 1 Then Temp = Temp & " " & MoedaSingular Else Temp = Temp & " " & MoedaPlural End If End If Parcial = Int((Valor - Int(Valor)) * 100 + 0.1) If Parcial Then Buf = ExtensoCentavos(Parcial, "centavos", "centavo") If Temp <> vbNullString Then Temp = Temp & " e " End If Temp = Temp & Buf End If End If Extenso = Temp End Function Function ExtensoCentavos(ByVal Valor As Double, ByVal MoedaPlural As String, ByVal MoedaSingular As String) As String Dim StrValor As String, Negativo As Boolean Dim Buf As String, Parcial As Integer Dim Temp as string Dim Posicao As Integer, Unidades Dim Dezenas, Centenas, PotenciasSingular Dim PotenciasPlural Negativo = (Valor < 0) Valor = Abs((Valor)) If Valor Then Unidades = Array(vbNullString, "um", "dois", "três", "quatro", "cinco", "seis", "sete", "oito", "nove", "dez", "onze", "doze", "treze", "quatorze", "quinze", "dezesseis", "dezessete", "dezoito", "dezenove") Dezenas = Array(vbNullString, vbNullString, "vinte", "trinta", "quarenta", "cinquenta", "sessenta", "setenta", "oitenta", "noventa") Centenas = Array(vbNullString, "cento", "duzentos", "trezentos", "quatrocentos", "quinhentos", "seiscentos", "setecentos", "oitocentos", "novecentos") PotenciasSingular = Array(vbNullString, " mil", " milhão", " bilhão", " trilhão", " quatrilhão") PotenciasPlural = Array(vbNullString, " mil", " milhões", " bilhões", " trilhões", " quatrilhões") StrValor = Left(Format(Valor, String(18, "0") & ".000"), 18) For Posicao = 1 To 18 Step 3 Parcial = Val(Mid(StrValor, Posicao, 3)) If Parcial Then If Parcial = 1 Then Buf = "um" & PotenciasSingular((18 - Posicao) \ 3) ElseIf Parcial = 100 Then Buf = "cem" & PotenciasSingular((18 - Posicao) \ 3) Else Buf = Centenas(Parcial \ 100) Parcial = Parcial Mod 100 If Parcial <> 0 And Buf <> vbNullString Then Buf = Buf & " e " End If If Parcial < 20 Then Buf = Buf & Unidades(Parcial) Else Buf = Buf & Dezenas(Parcial \ 10) Parcial = Parcial Mod 10 If Parcial <> 0 And Buf <> vbNullString Then Buf = Buf & " e " End If Buf = Buf & Unidades(Parcial) End If Buf = Buf & PotenciasPlural((18 - Posicao) \ 3) End If If Buf <> vbNullString Then If Temp <> vbNullString Then Parcial = Val(Mid(StrValor, Posicao, 3)) If Posicao = 16 And (Parcial < 100 Or _ (Parcial Mod 100) = 0) Then Temp = Temp & " e " Else Temp = Temp & ", " End If End If Temp = Temp & Buf End If End If Next If Temp <> vbNullString Then If Negativo Then Temp = "menos " & Temp End If If Int(Valor) = 1 Then Temp = Temp & " " & MoedaSingular Else Temp = Temp & " " & MoedaPlural End If End If Parcial = Int((Valor - Int(Valor)) * 100 + 0.1) If Parcial Then Buf = Extenso(Parcial, "centavos", "centavo") If Temp <> vbNullString Then Temp = Temp & " e " End If Temp = Temp & Buf End If End If ExtensoCentavos = Temp End Function
  7. @Alex Sandro Pereira na real seria o Google planilhas, que devera ler o Calc. Não sei se é possível, nunca usei o Google planilhas. Teria que consultar Fórum do Google...
  8. @psiflavio Não é possível. Mas dá para contornar, coloque a forma em Dispor para o plano de fundo. Desta maneira as células são visíveis em cima da Forma. Obs. Para selecionar a imagem Disposta em plano de fundo, use a setinha da Barra de ferramentas Desenho, selecione um pouco maior que a imagem. Obs. A Célula não pode ter cor de fundo.
  9. @SkaterGirl Sobre a parte negrito $DADOS.$D$2:$D$200 esta é a coluna onde é procurada a referência a parte =MENOR($DADOS.$D$2:$D$200;LINHA()-3 a funçãp menor requer um indice, o primeiro menor (1) que sera o primeiro da sequencia a ser localizado para não ser necessári alterr o 1 para 2 nas linhas seguintes uso a formula ;LINHA()-3 Desconheço o funcionamento do Google Planilhas, só uso e desenvolvo para o LibreOffice, desde 1998 quando se chamava StarOffice. Sugestão, mantenha uma conta em uma nuvem ( ex: Dropbox / Mega ) com a pasta, dos arquivos, compartilhado nas maquinas, assim poderá usar o LibreOffice em todas as máquinas.
  10. @skatergirl , segue uma sugestão.. obs.: após baixar o arquivo, só nude a terminação de .zip para .ods, antes de abrir. trimestre.zip
  11. @pretojoia, segue versão com macros para lançamento de Entradas e Saídas. porém para o controle de Validade o Estoque também tem que controlar separado. Precisa estudar como será feito, para aprimorar a planilha. Caso queira entre em contato direto, e-mail em meu perfil, ao lado. ATENÇÃO O ARQUIVO ZIPADO ANEXO, SO ALTERE DE zip PARA ods, PARA ABERTURA NO LibreOffice. Planilha de control Estoque.zip
  12. Ola @pretojoia, segue um exemplo do arquivo, posso te ajudar mais no final de semana... Na planilha ENTRADA, ao acionar o botão [Cadastrar] a macro copia os dados, sem formulas, para a planilha ENT_ESTOQUE e atualiza a Tabela Dinâmica que esta na planilha ESTOQUE_TD, para incluir novos itens, se necessário. Faça um teste, inclua um item novo, ele aparecerá na lista de ESTOQUE_TD. Caso queira tentar a replicar o processo para a SAIDA, fique a vontade ( ou posso faze-lo no final de semana ) ATENÇÃO O ARQUIVO ZIPADO ANEXO, SO ALTERE DE zip PARA ods, PARA ABERTURA NO LibreOffice. Planilha de control Estoque.zip
  13. Ola @pretojoia, poste um arquivo exemplo, fica mais fácil palpitar. Talvez, so corrigir a macro !!!!
  14. @Maria Cristina Oliveira , sem sucesso, não consegui acessar o arquivo, pelo LibreOffice.
  15. @Maria Cristina Oliveira,seria possível me enviar uma copia deste arquivo .dic , coloque em uma nuvem, e passe o link, para [email protected], poderei dar uma estudada se tem como funcionar no LibreOffice.
  16. Ola @Maria Cristina Oliveira, o LibreOffice usa internamente arquivos de dicionário com terminação .dic Na pasta de instalação em share / extensions tem a pasta do nome do arquivo e nesta pasta o arquivo.dic Não sei se funcionara. De retorno.
  17. @mendesjoao , é um formulário ? Poderia ser feito no Calc ? Tem um arquivo exemplo para disponibilizar ?
  18. https://help.libreoffice.org/6.3/pt-BR/text/sbasic/shared/01030300.html?DbPAR=BASIC#bm_id3153344 423 Propriedade ou método não encontrado Qual a finalidade para ver se filtro esta ativo ? Poste a macro completa. Obs.: Esta pergunta seria mais vista se estivesse aqui: https://ask.libreoffice.org/pt-br/questions/
  19. @Julio M. Abreu , entre em contato direto, seja como aqui: https://wiki.documentfoundation.org/User:Schiavinatto Envie o arquivo com macro e erro, para ver durante execução.
  20. @LucianoAlexandre , acredito desta maneira não ser possível. Acredito que deva ser assim, estando com a célula A1 ativa, você aciona a macro, ela pega o texto da célula e com a condicional Case executa a macro desejada. Esta macro pode estar ligada em Eventos de planilha, assim será executada quando A1 sofrer alteração. De mais detalhes do uso desejado, se possível com um arquivo exemplo.
  21. @Julio M. Abreu segue macro corrigida: REM ***** BASIC ***** sub XPTO GoToCel "B1" Dim oSel as Object Dim Var1 As integer Dim Var2 As Integer Dim Var3 As String oSel = ThisComponent.getCurrentSelection() Var1 = oSel.getString() For Var2 = 1 To Var1 Step 1 Procurar Execute "Cut" Execute "GoDown" '==== oSel = ThisComponent.getCurrentSelection() Var3 = oSel.getString() While Var3 <> "" Execute "GoDown" oSel = ThisComponent.getCurrentSelection() Var3 = oSel.getString() Wend Execute "Paste" Execute "GoDown" Next End Sub '----------------------- ' SubMacros '----------------------- Sub Procurar dim args1(20) as new com.sun.star.beans.PropertyValue args1(0).Name = "SearchItem.StyleFamily" args1(0).Value = 2 args1(1).Name = "SearchItem.CellType" args1(1).Value = 0 args1(2).Name = "SearchItem.RowDirection" args1(2).Value = true args1(3).Name = "SearchItem.AllTables" args1(3).Value = false args1(4).Name = "SearchItem.SearchFiltered" args1(4).Value = false args1(5).Name = "SearchItem.Backward" args1(5).Value = false args1(6).Name = "SearchItem.Pattern" args1(6).Value = false args1(7).Name = "SearchItem.Content" args1(7).Value = false args1(8).Name = "SearchItem.AsianOptions" args1(8).Value = false args1(9).Name = "SearchItem.AlgorithmType" args1(9).Value = 0 args1(10).Name = "SearchItem.SearchFlags" args1(10).Value = 0 args1(11).Name = "SearchItem.SearchString" args1(11).Value = "Conta" args1(12).Name = "SearchItem.ReplaceString" args1(12).Value = "" args1(13).Name = "SearchItem.Locale" args1(13).Value = 255 args1(14).Name = "SearchItem.ChangedChars" args1(14).Value = 2 args1(15).Name = "SearchItem.DeletedChars" args1(15).Value = 2 args1(16).Name = "SearchItem.InsertedChars" args1(16).Value = 2 args1(17).Name = "SearchItem.TransliterateFlags" args1(17).Value = 256 args1(18).Name = "SearchItem.Command" args1(18).Value = 0 args1(19).Name = "SearchItem.SearchFormatted" args1(19).Value = false args1(20).Name = "SearchItem.AlgorithmType2" args1(20).Value = 1 createUnoService("com.sun.star.frame.DispatchHelper") _ .executeDispatch(ThisComponent.CurrentController.Frame, ".uno:ExecuteSearch", "", 0, args1()) End Sub Sub GoToCel ( xLocal$ ) dim args1(0) as new com.sun.star.beans.PropertyValue : args1(0).Name = "ToPoint" : args1(0).Value = xLocal CreateUnoService("com.sun.star.frame.DispatchHelper") _ .executeDispatch(ThisComponent.CurrentController.Frame, ".uno:GoToCell", "", 0, args1()) End Sub Sub Execute ( oQe$ ) CreateUnoService("com.sun.star.frame.DispatchHelper") _ .executeDispatch(ThisComponent.CurrentController.Frame, ".uno:" & oQe & "", "", 0, Array()) End Sub
  22. @Julio M. Abreu , me envie uma copia do arquivo que esta usando, sigilo garantido, veja contato direto aqui: https://wiki.documentfoundation.org/User:Schiavinatto
  23. @Julio M. Abreu ao colar a macro na resposta houve alteração na grafia: "o que" é junto, tire o espaço. altere no titulo da macro e depois de uno. No arquivo esta certo.

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...