-
Posts
150 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por Schiavinatto
-
-
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.
- 1
-
Ola @RAIMUNDO LIMA DE ARAUJO, em sua planilha, modelo, não tem extra a calcular, a saída max. foi 18h.
-
-
Só manualmente.
- 1
-
Olá @Clérisson, poste este pedido de ajuda no ask.libreoffice, lá é o canal oficial, tem mais gente visualizando.
-
-
Ola @hkss, poste sua dúvida em https://ask.libreoffice.org/c/brazilian-portuguese/9, é local de ajuda especifica para LibreOffice.
-
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
- 1
-
@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...
-
@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.
-
10 horas atrás, SkaterGirl disse:
Obrigada pela ajuda. Era realmente o que eu estava precisando. Se possível você poderia explicar a parte em negrito da fórmula? =SEERRO(ÍNDICE($DADOS.$C$2:$C$200;CORRESP(1;($DADOS.$D$2:$D$200=MENOR($DADOS.$D$2:$D$200;LINHA()-3));0));"")
Gostaria de entender para poder usar em outras situações quando for necessário.
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
9 horas atrás, SkaterGirl disse:Não querendo abusar, mas já abusando novamente...
A fórmula funcionou certinho no LibreOffice Calc, conforme fui fazendo o preenchimento dos dados. Entretanto, quando importei a planilha para o Google Planilhas não funcionou (não mexi na fórmula). Alterei os trimestres no Google e não retornou as informações do "nº do processo". Como tem dias que trabalho em home office aí acabo utilizando as duas versões (no calc e no google). Seria necessário fazer alguma adaptação?
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.
- 1
-
@skatergirl , segue uma sugestão..
obs.: após baixar o arquivo, só nude a terminação de .zip para .ods, antes de abrir.
-
@pretojoia, verei a noite, ok.
-
@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.
-
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.
-
Ola @pretojoia, poste um arquivo exemplo, fica mais fácil palpitar.
Talvez, so corrigir a macro !!!!
-
@Maria Cristina Oliveira , sem sucesso, não consegui acessar o arquivo, pelo LibreOffice.
-
@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.
-
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.
- 1
-
@mendesjoao , é um formulário ?
Poderia ser feito no Calc ?
Tem um arquivo exemplo para disponibilizar ?
-
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/
-
@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.
-
@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.
-
@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
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
Erro de sintaxe do BASIC usando BrOffice
em Microsoft Office e similares
Postado
Olá @FILIPE_NERI, explica o que a macro deve fazer?
Fez pelo gravador de macro?