Ir ao conteúdo
  • Cadastre-se

Crafteribanez

Membro Pleno
  • Posts

    97
  • Cadastrado em

  • Última visita

Tudo que Crafteribanez postou

  1. Boa Tarde Não encontrei na Web, nenhum exemplo em VBA para imprimir todos as mensagens de e-mail de determinada pasta do Outllok 2013 em PDF. O que preciso fazer é imprimir todas as mensagens de uma pasta específica pdf para guardar em pasta de rede, considerando consulta de posterior vários usuários. Grato por algum ajuda.
  2. Boa tarde Este é um procedimento normal que utilizo no Excel2010-2013 para consultar dados em um outra pasta do Excel via SQL. Questiono quando a pasta que quero abrir possuir senha de proteção e senha de gravação, qual parte do código modifico para inserir estas senhas ? Sub SQLConsulta() Application.ScreenUpdating = False On Error GoTo SQLSEMRETORNO Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Dim sql As String Dim x As Integer Dim INSTRUMENTO As String Plan9.Activate Cells.Select Selection.ClearContents Set cn = New ADODB.Connection With cn .Provider = "Microsoft.ACE.OLEDB.12.0" .ConnectionString = ThisWorkbook.FullName .Properties("Extended Properties") = "Excel 8.0;HDR=YES" .Open End With sql = "Select * from [Plan1$]" Set rs = New ADODB.Recordset rs.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText Plan9.Range("A2").CopyFromRecordset rs Cells.Select Selection.RowHeight = 15 For x = 1 To rs.Fields.Count Cells(1, x) = rs.Fields(x - 1).Name Next x rs.Close cn.Close Set rs = Nothing Set cn = Nothing Application.ScreenUpdating = True Exit Sub SQLSEMRETORNO: MsgBox "A consulta não gera nenhum resultado" rs.Close cn.Close Set rs = Nothing Set cn = Nothing Application.ScreenUpdating = True End Sub
  3. Acredito que o erro seja porque o SQL considera o máximo comprimento possível de colunas no Excel 250. Sendo assim tive de reduzir a quantidade de caracteres as informações. Assim o form funciona perfeitamente.
  4. Boa Tarde Tenho um form em Excel2013 e coloquei um textbox para receber entrada de usuários. Textos muito extensos ele não aceite por limite de caracteres. Pesquisando pelo que pude descobrir o limite é 255 caracteres. Preciso incluir em muitos casos 1000 caracteres. Pesquisando novamente descobri o comando " Textbox35.MaxLength = 1000" Coloquei isto no userform initialize. Não funcionou, continua limitando. Alguma forma de poder incluir mais de 255 caracteres em um texto box ? ** Detalhe adicional ** Utilizo um comando SQL para buscar este campo e inserir os dados em outra planilha. Todos os outros campos de texto funcionam normalmente na SQL.
  5. Resolvido. Utilizei um laço for each na tabela e coloquei todos os valores em uma variável, a qual busquei na SQL.
  6. Bom dia Uma dúvida que não sei se é possível. Tenho um código SQL em Excel que lê dados de uma tabela e e coloca os dados em outra. Perfeito se não fosse o fato de colar todos os dados. O que quero fazer ? Na cláusula de pesquisa Where da SQL quero colocar um código de produto. Más não é só um código. O usuário em uma Sheet "Planilha" específica do Excel tipo "Plan3" vai ir digitando os códigos que quer filtrar no relatório. Vou colocar um cabeçalho na primeira coluna "A1" da Plan3 escrito " Código" e aí o usuário nas linhas A2, A3 e assim por diante vai colocando os códigos que ele quer filtrar. Gostaria de passar esta tabela/coluna "Plan3/A" como parâmetro para a cláusula Where da SQL. Seria tecnicamente um Where de uma Range. Assim o resultado seria a pesquisa Where de todos os códigos constantes na coluna A da Tabela Plan3. Tem como fazer isto ? Código que tenho e funciona perfeito para todos os dados. Sub SQLBusca() Application.ScreenUpdating = False On Error GoTo SQLSEMRETORNO Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Dim sql As String Dim ws As Worksheet Set ws = Worksheets("DESCARREGAR") ws.Activate Range("A:M").Select Selection.Clear Set cn = New ADODB.Connection With cn .Provider = "Microsoft.ACE.OLEDB.12.0" .ConnectionString = ThisWorkbook.FullName .Properties("Extended Properties") = "Excel 8.0;HDR=YES" .Open End With sql = "Select * from [P0100_UniaoGeral$] WHERE CODIGO ????" Set rs = New ADODB.Recordset rs.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText Application.ScreenUpdating = True ws.Activate Application.ScreenUpdating = False Range("A2").CopyFromRecordset rs Cells.Select Selection.RowHeight = 15 For x = 1 To rs.Fields.Count Cells(1, x) = rs.Fields(x - 1).Name Next x Application.ScreenUpdating = True rs.Close cn.Close Set rs = Nothing Set cn = Nothing Exit Sub SQLSEMRETORNO: MsgBox "A consulta não gera nenhum resultado" rs.Close cn.Close Set rs = Nothing Set cn = Nothing Application.ScreenUpdating = True End Sub
  7. Bom dia Tenho o seguinte erro quando rodo um script python 3.6.3. (unicode error)'unicodeescape' codec can't decode bytes in position 22-23 truncated\UXXXXX escape Código: import os arquivo = open("Arvore.txt","w") for folderName, subfolders, filenames in os.walk('\\\PstaPrincipalRede\PasteSecundariaRede\Pasta_Interna'): arquivo.write("%s\n" % folderName) arquivo.close() Acredito que o erro seja no underscore da pasta interna, pois verifique que não salva o arquivo txt exatamente em todas as pastas internas que tem o underscore. tem alguma maneira de no Python 3.6.3 resolver este problema do underscore ?
  8. Bom dia, adaptei o seguinte código que achei na web em um Listbox no Excel. Ele pesquisa correto na segunda coluna do listbox, porém somente busca os valores digitados que "começam" com o ditigado. Se a palavra estiver no meio da string na coluna, não busca. Ex: Se buscar " João de Deus " e digitar " João " encontra, más se eu quiser buscar " de Deus " não localiza visto não começar com " de Deus". Tentei colocar "*" & TextBox1.Text & "*" Não funciona. Alguma ideia ? Private Sub TextBox11_Change() valor_pesquisado_i = TextBox11.Text Dim guia As Worksheet Dim linha As Integer Dim coluna As Integer Dim linhalistbox As Integer Dim valor_celula As String Set guia = ThisWorkbook.Worksheets("ListaFormPregao") codigo = txt_codigo linha = 2 coluna = 2 linhalistbox = 0 frmListaPregoes.ListBox1.RowSource = "" With guia While .Cells(linha, coluna).Value <> Empty valor_celula = .Cells(linha, coluna).Value If UCase(Left(valor_celula, Len(valor_pesquisado_i))) = UCase(valor_pesquisado_i) Then With frmListaPregoes.ListBox1 .AddItem .List(linhalistbox, 0) = Sheets("ListaFormPregao").Cells(linha, 1) .List(linhalistbox, 1) = Sheets("ListaFormPregao").Cells(linha, 2) linhalistbox = linhalistbox + 1 End With End If linha = linha + 1 Wend End With End Sub
  9. Encontrei o seguinte código na Web para listar os e-mails do Outlook de uma pasta específica no Excel. Funciona bem para pastas particulares .pst. Eu gostaria de adaptar este código para leitura da caixa de entrada do Outlook direto. Tentei no "olNS.Folder(Exchange).Folders("Caixa de entrada) Más só dá erro. Alguma dica ? Dim appOutlook As Object Dim olNS As Object Dim olFolder As Object Dim olItem As Object Dim r As Long On Error Resume Next Set appOutlook = GetObject(, "Outlook.Application") If appOutlook Is Nothing Then Set appOutlook = CreateObject("Outlook.Application") End If On Error GoTo 0 Set olNS = appOutlook.GetNamespace("MAPI") Set olFolder = olNS.Folders("PastaParticularOutlook2010Jafags").Folders("Excel 2018") Cells.Delete r = 3 Range("A3:K3") = Array("Título", "Quem enviou", "Para", "Data e Hora", "Anexos", "Tamanho", "Última modificação", "Categoria", "Nome do Remetente", "Tipo de acompanhamento", "Conteúdo") For Each olItem In olFolder.Items If TypeName(olItem) = "MailItem" Then
  10. Bom dia Estou ajudando um colega a exportar um relatório do Access 2002 para PDF Encontrei a seguinte linha de comando, pesquisando nos foruns. 'DoCmd.OutputTo acOutputReport, "relatorio_ordem_servico", acFormatPDF, "C:\\relatorio_ordem_servico.pdf" Coloquei um botão no formulário direcionando para este comando VBA e sempre dá erro na parte "acFormatPDF". Sendo Access 2002, tem que referenciar alguma biblioteca ? ou este comando não funciona no Access 2002 ?
  11. Sim, Python no Windows 7. Não conhecia a extensão .pyw, o material que tenho "os livros" não falam sobre esta extensão, mesmo porque estes livros para iniciantes não trabalham com GUI, pelo menos não encontrei ainda um que explicasse isto. Abri o arquivo no editor (PyScripter) e salvei como Calculo.pyw como indicado. Funcionou, abriu direto o formulário e está calculando perfeito. Era isto mesmo que eu precisava. Grato.
  12. Boa Tarde Tenho um formulário criado no tkinter Python 3.6.3 Roda no meu micro através do arquivo Calculo.py Sempre que vou rodar o formulário tenho que abrir o arquivo Calculo.py com o script e rodar o formulário através da opção Run F5. Tem algum modo de clicar no arquivo ou criar um arquivo e não abrir o código, rodar o formulário diretamente ? Obs: O micro que rodar terá o Python instalado. Exemplo: no Java eu crio o .java e depois o .class que é o bytecode. E no pýthon tem algum método para rodar diretamente ? Grato.
  13. A primeira foto esquerda é do Excel 2010 a da direita Excel 2013 As bibliotecas no 2013 são 15.0 enquanto no 2010 são 14.0. Verifiquei no 2013 e as bibliotecas: Microsoft Excel 14.0 Object Library não existe; Microsoft Office 14.0 Object Library também não existe; AUSENTE: Microsoft Word 15.0 Object Library. Vou verificar as bibliotecas aqui ................. PERFEITO !!!!!!!!!!! Fui em outro micro com Excel 2010 e selecionei a biblioteca Microsoft Word 14.0 Object Library e voltou a funcionar no Excel 2010 ! Show., Quanto o setor de informática instalou a nova versão do Office para 2013, removeu o 2010 por inteiro inclusive as bibliotecas, como nos que tem 2010 a biblioteca está lá, foi só apontar de novo para o 14.0 que voltou a funcionar.
  14. Bom dia Tenho um sistema com macros no Excel criado inicialmente no Excel 2010 32 bits. Outros usuários com Excel 2010 32 bits, também utilizam. Funciona perfeitamente. Foi instalado na minha máquina o Excel 2013 e também com 32 bits, olhei nas informações do produto. Fiz algumas alterações no código VBA nas macros e salvei, obviamente no Excel 2013. O pessoal que tem o Excel 2010 32 bits, não consegue mais rodas as macros. Erro apontado: " Erro de compilação: É impossível localizar o projeto ou a biblioteca " O erro dá quando o código chega na variável pesquisa1 utilizando as funções internas do Excel WorksheetFunction.VLookup Sempre funcionou no Excel 2010 até atualizar o código no Excel 2013. Dim pesquisa 'Definição de variável pesquisa sem tipo especificado fica variant pesquisa = Application.WorksheetFunction.VLookup(codigo, intervalo, 2, False) 'Ano Alguma sugestão ?
  15. Boa noite: Tenho um programa que seleciono vários arquivos em uma lista e peço para imprimir cada um sequencialmente em PDF. As impressoras PDF imprimem sempre o nome do arquivo "Memorando" e na sequencia o próximo arquivo, também é colocado o nome de "Memorando". Isto faz com que ao imprimir 20 arquivos, o resultado na pasta é somente 1 arquivo com o nome "Memorando". Pergunta ? Tem algum programa para imprimir em PDF, que se possa selecionar uma impressão sequencial no nome tipo "Memorando1", "Memorando2", e assim por diante ? Ou algo parecido ? Ou algum tutorial de como criar uma impressora PDF em que se possa criar estas opções ? Grato por uma ideia.
  16. Boa Tarde Estou tentando fazer uma SQL no VBA, porém com a conexão a duas pastas de trabalho no mesmo diretório. Via conexão pelo Ribbon eu consigo fazer, porém quero aprender como fazer o código. A primeira consulta que fiz retornou os dados corretamente, porém com apenas uma pasta Sub ConsultaSQL() Dim ConexaoPlan As New ADODB.Connection Dim rsConsulta As New ADODB.Recordset Dim sql As String Plan1.Range("A2:E5000").Value = Empty Plan1.Range("A4").Select ConexaoPlan.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source='C:\PastaExcel\Pasta1.xls'" & ";Extended Properties=Excel 8.0" ConexaoPlan.Open sql = "Select * from [Base1$]" rsConsulta.Open sql, ConexaoPlan, adOpenKeyset, adLockOptimistic Plan1.Range("A2").CopyFromRecordset rsConsulta End Sub A segunda consulta, não estou conseguindo unir duas Pastas de trabalho no mesmo diretório. Sub ConsultaSQL2() Dim ConexaoPlan As New ADODB.Connection Dim ConexaoPlan2 As New ADODB.Connection Dim rsConsulta As New ADODB.Recordset Dim sql As String Plan1.Range("A2:E5000").Value = Empty Plan1.Range("A4").Select ConexaoPlan.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source='C:\PastaExcel\Pasta1.xls'" & ";Extended Properties=Excel 8.0" ConexaoPlan2.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source='C:\PastaExcel\Pasta2.xls'" & ";Extended Properties=Excel 8.0" ConexaoPlan.Open ConexaoPlan2.Open sql = "Select * from 'C:\PastaExcel\Pasta1.xls'[Base1$]UNION ALL" sql = sql & "Select * from 'C:\PastaExcel\Pasta2.xls'[Base1$]" rsConsulta.Open sql, ConexaoPlan, adOpenKeyset, adLockOptimistic Plan1.Range("A2").CopyFromRecordset rsConsulta End Sub Se alguém tiver uma ideia agradeço. Bom. o projeto é unir mais que dez Pastas de trabalho, porém se eu conseguir com duas consigo com 10. Grato.
  17. Qual o comando no Basic LibreOffice que retorna a linha atual, célula selecionada. No Excel utilizo: Dim linha as long linha=activecell.row msgbox linha Aparece na caixa a linha atual.
  18. Boa Tarde Tenho uma macro em Excel para enviar e-mails com anexos e formatado. Perfeito. Tenho o trabalho de sempre ter de imprimir o ultimo e-mail enviado para anexar aos processos. Tem algum comando que eu possa utilizar no Excel vba para imprimir o último e-mail enviado constante da minha caixa de "mensagens enviadas " do Outllook 2010 ?
  19. Perfeito ! Era isto mesmo ! adicionado 1 minuto depois Ainda não aprendi a fechar o tópico e dar o joinha !
  20. Bom dia, Necessito inserir através do VBA no Excel a função Máximo com um parâmetro de critério. Tem que ser no VBA pois preciso do valor de retorno da função para outro cálculo. Tenho a seguinte planilha em Plan1 Preciso em retorno do VBA o maior valor de acordo com critério "Vendedor" Criei a seguinte sub que só dá erro. Sub maior() Dim valor As Long Dim Wsk As Worksheet Set Wsk = Worksheets("Plan1") valor = WorksheetFunction.DMax(Wsk.Range("A1:B13"), Wsk.Range("B1"), Wsk.Range("A1") = "Paulo") MsgBox valor End Sub A função deveria retornar para a variável "valor" o número 627,591 Só que só dá erro. Alguma dica ?
  21. Boa Tarde. Tenho os seguintes textos nas células de A1 a A4: Com a função localizar posso localizar exatamente onde inicia a sigla NE na primeira célula, 6ª posição. Porém como quero localizar não só este padrão, porém NE, N/E, N E, N-E podendo ser de várias maneiras, utilizei a função ou("NE";"N/E";......) como primeiro argumento da localizar "Texto Procurado". **** no Excel 2002 **** Vi pelo menos aqui que a função OU não aceita texto. Tem alguma função tipo "OU" para String ? Texto ? Quero localizar diferentes tipos de padrões escritos da mesma sigla para ap´so com a função Ext.Texto extrair os números dos empenhos.
  22. Perfeito!, não tinha pensado desta maneira. Grato. Resolvido.
  23. Na célula A1 tenho a seguinte informação: NF 55454 empenho 99878/2017 Quero extrair somente o número do empenho. Usei na célula b1 a fórmula: =procurar("/";A1) Me retornou o valor 23 corretamente, ou seja a 23ª posição do caractere. O que não estou conseguindo; retirar os 05 caracteres a esquerda do caractere encontrado, ou seja o número 99878. Tentei Ext.Texto com o último argumento negativo pois quero a esquerda, más não deu certo. =EXT.TEXTO(A1;23;-5) " isto dá erro" Alguma sugestão ?
  24. Bom dia Trocaram o meu computador no trabalho. Um dos problemas, a versão do Office que era 2010 passou para 2002. Eu tinha no Outlook 2010 pastas particulares muitas informações arquivadas em pastas. São muitas pastas. tenho o backup deste arquivo .pst 2010. tentei abrir no 2002, óbvio que não reconheceu. Pergunta, tem algum método para converter ou abrir este arquivo .pst pastas particulares do Outlook2010 no Outlook2002. ? Grato.

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

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!