Pesquisar na Comunidade
Mostrando resultados para as tags ''Excel''.
Encontrado 128 registros
-
Olá pessoal, Tenho uma pasta com vários arquivos de holerite, que estão renomeados com a matrícula e nome do funcionario. Gostaria de enviar esses contracheques pelo whatsapp, pensei em enviar pelo excel através de VBA, será que é possivel fazer esse envio?
-
Boa noite, anexei 2 tabelas de exemplo onde eu gostaria de organizar através de macro as "LOCAÇÕES" da coluna "B" seguindo alguns critérios: * As iniciais "AL...", "DCA...", "DCS...", "SPA...", "RAC..." e "BPOINT" são prefixos ou palavras que não variam - Locações repetidas dentro da mesma célula deverão ser unificadas (ou apagada a duplicata) - Locações que iniciam com "9" seguido de vários números deverão ser apagadas - No final se sobrar "/" deverá ser apagada - Caso estejam presentes, as locações que deverão ser movidas para o final da célula serão essas na respectiva ordem: BPOINT (último) ALQ... (penúltimo) ALT... (antepenúltimo) RAC... (pré-antepenúltimo) SPA... (antes do pré-antepenúltimo) - O restante das locações deverá ser movido para o começo da célula, em ordem alfabética de acordo com a penúltima letra Ex.: Desorganizadas: BPOINT/ALF01F1/ALH02D1/BPOINT/ALQ12A1/ALH02D1/ SPA05B/BPOINT/DCA036C1/DCA036A2/DCA036E1/ALQ12E1/ALT27D3 Organizadas: ALH02D1/ALF01F1/ALQ12A1/BPOINT DCA036A2/DCA036C1/DCA036E1/SPA05B/ALT27D3/ALQ12E1/BPOINT (Eu pintei as letras apenas pra melhor visualização dos critérios aplicados) Agradeço muito desde já quem puder me ajudar nesse desafio. ITEM LOCAÇÃO 10763380 ALT48D1/ALT48D2/DCA001F1/DCA001E1/ALT48D3/DCA001E3/DCA001F3/ 15396678 ALT19A3/DCS018E1/DCS018D1/DCS018C1/DCS018E2/ALT62G1 15432208 SPA15A/ALQ08A2/DCS028B1/DCS028B2/ALT41A3 15432210 DCA028E1/ALT43G1/ALT42D1/ALT42A1/ALT37G3 15396704 93300001/BPOINT/ALT44A3/DCA034B1/SPA03A/DCA034A1/BPOINT/DCA034A2 10763376 SPA05B/BPOINT/DCA036C1/DCA036A2/DCA036E1/ALQ12E1/ALT27D3 ITEM LOCAÇÃO 10788155 ALD21A2/BPOINT/RAC2SVC1 12092080 ALQ01B2/BPOINT/ALE01F4/ 12065932 BPOINT/ALF01F1/ALH02D1/BPOINT/ALQ12A1/ALH02D1/ PPN00698 90056896/SPA01A/ALF01A2 15344639 RAC2SVC1/ALF01J1/ALB08E3 10810293 SPA01B/ALF03A2/ 10863947 ALG04C4/ALG04C4/ 12198556 90057421/ALL01J4/SPA08B/ 15470987 AST29D1/ALQ12A1/SPA04B
-
Preciso gerar um excel com várias sheets através de php/mysql e estou usando o phpspreadsheet. O objetivo é indicar um ou mais ID, e em cada sheet no excel, colocar a informação desses IDs, exemplo: ID1 = sheet1, ID2 = sheet2, etc... Este é o script que montei. Se mudar a array para variavel e retirar o foreach, consigo gerar o arquivo de excel apenas com um ID e uma sheet. Se mudo para vários IDs com array e foreach gera o arquivo excel mas com uma sheet em branco. O que precisa ser ajustado aqui? <?php include ("conexao_banco.php"); require ("vendor/autoload.php"); use PhpOffice\PhpSpreadsheet\Spreadsheet; use PhpOffice\PhpSpreadsheet\Writer\Xlsx; $spreadsheet = new Spreadsheet(); $array = array('A0001','A0002'); $date1 = '2023-08-14'; $date2 = '2023-08-15'; foreach($array as $account){ $sheet = $spreadsheet->getActiveSheet(); $sheet->setTitle($account); $sql = $conn->prepare("call procedure (?, ?, ?)"); $sql->bind_param("sss", $conta, $date1, $date2); $sql->execute(); $res = $sql->get_result(); $i = 1; while($row = $res->fetch_assoc()){ $sheet->setCellValue("A$i", $row["IDACCOUNT"]); $sheet->setCellValue("B$i", $row["DATE1"]); $sheet->setCellValue("C$i", $row["DATE2"]); $sheet->setCellValue("D$i", $row["COLUMN1"]); $sheet->setCellValue("E$i", $row["COLUMN2"]); $i++; } $sheet->insertNewRowBefore(1, 1); $sheet->setCellValue("A1", "IDACCOUNT"); $sheet->setCellValue("B1", "DATE1"); $sheet->setCellValue("C1", "DATE2"); $sheet->setCellValue("D1", "COLUMN1"); $sheet->setCellValue("E1", "COLUMN2"); // for bold on header $highestColumn = $sheet->getHighestColumn(); $sheet->getStyle('A1:E1:' . $highestColumn . '1' )->getFont()->setBold(true); } // saving file $filename = "teste.xlsx"; $writer = new Xlsx($spreadsheet); $writer->save($filename); ?>
-
Olá pessoal, tudo bem? Estou criando uma planilha para a empresa e queria gerar um relatório simples, porém bonito, usando o UseForm, mas estou iniciando no VBA e já tem um tempo que não mexo com programação. Alguém poderia me ajudar? A dúvida é o seguinte: Irei escolher uma opção de Produto e uma opção de Embalagem. Nisso clico em gerar e gera o texto com a somatória de todas as saídas desse produto. No Excel fiz isso usando o PROCV, mas não sei aplicar no VBA. Irei mandar uma imagem do UseForm e um rascunho do possível código. Já peço desculpas pelos erros de lógica no algoritmo, estou enferrujado. Desde já agradeço com a ajuda.
-
Olá, pessoal! Como tenho pouca experiência em VBA, estou com dificuldade em desenvolver um código para atender minha necessidade. Garimpando na internet encontrei alguns códigos prontos que ajudaram em partes, mas não toda minha necessidade. Tenho uma planilha do excel com duas colunas: coluna A: exame da Semana - novembro - 07-11-2022.pdf coluna B: https://drive.google.com/uc?export=download&id=1 Gostaria de salvar esse pdf do hiperlink com o nome de acordo com a coluna A no endereço C:\teste\ Encontrei este código, mas ele vai direto para meus downloads, ignorando as etapas de: alteração do nome do arquivo e também ignorando pasta que eu quero salvá-lo: Sub OpenHyperLinks() 'Update 20141124 Dim xHyperlink As Hyperlink Dim WorkRng As Range On Error Resume Next xTitleId = "KutoolsforExcel" Set WorkRng = Application.Selection Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8) For Each xHyperlink In WorkRng.Hyperlinks xHyperlink.Follow Next End Sub _________________________________________________________________________________________________________________________ Esse outro código que encontrei, o resultado foi o que eu queria, porém os arquivos abrem como corrompidos: Private Declare PtrSafe Function URLDownloadToFile Lib "urlmon" _ Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, _ ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long Sub FazDownloadArquivos() 'macro que faz o download de arquivos a partir da URL da PLANILHA DADOS Dim NomeDiretorio As String Dim SiteArquivo, NomeSalvar As String Dim Resultado, i As Integer NomeDiretorio = "\\Documents\teste MACRO exame\" If Dir(NomeDiretorio, vbDirectory) = "" Then MsgBox "Deu ruim, o diretório não existe!" Else For i = 2 To 6 SiteArquivo = Worksheets("Recebimento_Exames").Cells(i, 2) NomeSalvar = NomeDiretorio & Worksheets("Recebimento_Exames").Cells(i, 1).Value & ".pdf" Resultado = URLDownloadToFile(0, SiteArquivo, NomeSalvar, 0, 0) If Resultado <> 0 Then MsgBox "Não consegui achar o arquivo " & SiteArquivo End If Next i End If End Sub ALGUÉM DA COMUNIDADE PODE ME AJUDAR? Obrigada!!!
-
Boa tarde. Há um tempo atrás eu conseguia visualizar, ao mesmo tempo, a planilha e o código VBA. Agora não sei o que aconteceu que quando eu clico na janela do código VBA a planilha é imediatamente minimizada. O contrário não acontece, ou seja, se eu clicar na planilha a janela do código não é minimizada. Alguém poderia me ajudar a solucionar isso, por favor? Obrigado.
-
Olá Pessoal ! Vejam se conseguem me ajudar... Fiz uma planilha geradora de etiquetas e fiz uma macro simples de impressão das etiquetas numa determinada impressora, e está funcionando ! Porém, são muitas etiquetas para impressão e para que eu não tivesse que ficar digitando uma por uma para imprimir, eu queria ver a possibilidade de uma impressão em série, onde eu colocaria o intervalo de etiquetas puxando do banco de dados e a impressora imprimisse uma seguida da outra.. Agradeço desde já !
-
Trabalho com planilhas para cálculos de comissão de funcionários. Possuo uma planilha com as seguintes caracteristicas: E uma coluna possuo valores de produções dos funcionários, como no exemplo: COLUNA A 4 570 621 314 476 240 120 Preciso que na célula seguinte ele faça multiplicação seguindo os seguintes critérios: Por 1,3 se o valor for menor que 100. Por 1,4 se o valor está entre 101 e 200. Por 1,5 se o valor está entre 201 e 300. Por 1,6 se o valor está entre 301 e 400. Por 1,7 se o valor está entre 401 e 500. Por 1,8 se o valor está entre 501 e 600. Por 1,9 se o valor está entre 601 e 700. Por 2,0 se o valor está entre 701 e 800. Por 2,1 se o valor está entre 801 e 900. Por 2,5 se o valor está entre 901 e 1000. Por 3,0 se o valor for maior que 1001. Procurei por fórmulas com essa função, porém, não encontrei nenhuma que atendesse as minhas necessidades. Minha dúvida é: Há alguma função no excel que tenha essas caracteristicas ou terei que usar VBA? Se terei que usar VBA, alguém poderia me passar como criar essa fórmula, um tutorial ou algo assim? Pois não faço a mínima idéia de como cria-la. Tenho uma fórmula criada em VBA aqui para outra função, mas já peguei ela pronta na internet do jeito que eu precisava.
-
Boa noite, pessoal! Estou em um impasse no meu código que passei o dia inteiro pesquisando e não consegui chegar em nenhuma luz. Possuo uma pasta dentro dos meus documentos hd, com uns 1000 e-mails do mesmo assunto e precisaria de uma maneira de filtrar palavras-chaves dentro do corpo do e-mail. No entanto, não estou conseguindo encontrar uma maneira de fazer o excel ler os arquivos de e-mails do Outlook dentro dessa pasta física (.msg). Tentei replicar o código presente nesse guia: Como Ler E-mails do Outlook e Colocar na Planilha com VBA (hashtagtreinamentos.com) No entanto, na variavel "minha_pasta" criei o objeto como file system object e acabou não dando certo. Desde já agradeço
-
Olá, por favor, algum mestre tem um modelo de conversão Exce para PDF no pyton?
-
Preciso converter uma célula em Excel com comando para ser executado no Python. O código da célula conta os valores "NO PRAZO" e "SIM" que estão em outra aba(aba3). =CONT.SES(ABA3!AW:AW;"NO PRAZO";ABA3!AG:AG;"SIM") Como ficaria em Python para realizar essa contagem.
-
Como eu oculto uma planilha quando ela tiver o valor zero na capa?
-
Olá pessoal, tudo bem? Tenho uma planilha com macros para tratamento de dados e está habilitada para macros, porém, acontece um bug que ela simplesmente some com todos os códigos e não deixa salvar a plan. Aparecendo os erros abaixo e quando dou atl+F11 os módulos estão em branco. Já aconteceram 3x com planilhas diferentes. Ela funciona por um período e do Nada acontece esse erro. uso ela todos os dias para atualizar as bases de dados. Alguém já passou por um problema semelhante? Vlw, pessoal.
-
Tenho a seguinte estrutura de pastas index.php (raiz) phpspreadsheet ( pasta criada dentro da raiz) .........composer.json (arquivo solto na pasta acima) .........composer.lock (arquivo solto na pasta acima) ........./vendor (pasta dentro da phpspreadsheet) ............................./ dentro da pasta vendor tem outras pastas e arquivos da biblioteca /src/view/rrc/resultExcel.php Segue o código do arquivo resultExcel.php <?php require_once 'request_precos.php'; // require 'vendor/autoload.php'; require '../../../phpspreadsheet/vendor/autoload.php'; use PhpOffice\PhpSpreadsheet\Spreadsheet; use PhpOffice\PhpSpreadsheet\Writer\Xlsx; // $spreadsheet = new Spreadsheet(); $spreadsheet = new Spreadsheet(); if($_SESSION['codrepr'] == ''){ $sheet = $spreadsheet->getActiveSheet(); $sheet->setCellValue('A1', 'Cod. Prod'); $sheet->setCellValue('B1', 'Descrição'); $sheet->setCellValue('C1', 'Lista'); $sheet->setCellValue('D1', 'Preço'); $row = 2; foreach($_retorno as $res){ $sheet->setCellValue('A'.$row, $res['CODPROD']); $sheet->setCellValue('B'.$row, $res['DESCRICAO']); $sheet->setCellValue('C'.$row, $res['DSLISTA']); $sheet->setCellValue('D'.$row, $res['preço']); $row++; } }else{ $sheet = $spreadsheet->getActiveSheet(); $sheet->setCellValue('A1', 'Cod. Prod'); $sheet->setCellValue('B1', 'Descrição'); $sheet->setCellValue('C1', 'Preço'); $row = 2; foreach($_retorno as $res){ $sheet->setCellValue('A'.$row, $res['CODPROD']); $sheet->setCellValue('B'.$row, $res['DESCRICAO']); $sheet->setCellValue('C'.$row, $res['preço']); $row++; } } $spreadsheet->getActiveSheet()->setTitle("Cons_Preço"); $arquivo = "cons_preco".time().".xlsx"; $writer = new Xlsx($spreadsheet); //$writer->save('arquivosXLS/'.$arquivo); $writer->save('../../../../temp/'.$arquivo); ?> <div class="row"> <div class="col-lg-12"> <?php $caminho = $_SERVER['HTTP_REFERER']; $auxcaminho= explode('/',$caminho); $aux1 = $auxcaminho[0]; $aux2 = $auxcaminho[1]; $aux3 = $auxcaminho[2]; $aux4 = $auxcaminho[3]; $caminhoReal = $aux1."//".$aux2."/".$aux3."/".$aux4; if( $_SERVER["SERVER_NAME"] == 'localhost'){ ?> <a class="btn btn-primary" href="http://localhost:8080/painel/temp/<?php echo $arquivo; ?>" download> <i class="fa fa-folder-open-o"></i> Fazer o download </a> <?php }else{ ?> <a class="btn btn-primary" href="<?php echo $caminhoReal; ?>/temp/<?php echo $arquivo; ?>" download> <i class="fa fa-folder-open-o"></i> Fazer o download </a> <?php } ?> </div> </div> ao executar a geração do excel aparece as seguintes informações: ( ! ) Warning: require(../../../phpspreadsheet/vendor/autoload.php): failed to open stream: No such file or directory in C:\wamp64\www\painel\src\view\rrc\resultPrecosXLS.php on line 5 ( ! ) Fatal error: require(): Failed opening required '../../../phpspreadsheet/vendor/autoload.php' (include_path='.;C:\php\pear') in C:\wamp64\www\painel\src\view\rrc\resultPrecosXLS.php on line 5 Se alguém puder me ajudar a entender o q esta acontecendo agradeço. Se precisarem de mais ou melhores informações me avisem tambem. Obrigado...
-
Olá pessoa, estou com um problema aqui. O código não consegue ler a linha caso tenha uma LETRA no caminho dele, vou dar um exemplo. A B C D 1 ola mundo 2 01/02/2021 200 200 3 se não tiver as palavras "ola" e "mundo" ele consegue fazer o calculo, vai descendo ate achar os valores 200,200 mas caso eu escreve qualquer coisa no caminho dele, ele não consegue calcular. Desde já agradeço. Codigo: Sub somarValores() On Error GoTo fim Dim data As Date Dim linha As Long Dim soma As Double Dim valor1, valor2 As Double soma = 0 caixa = 0 safra = 0 bb = 0 linha = 2 dataInicial = CDate(Planilha1.Cells(2, "F").Value) dataFinal = CDate(Planilha1.Cells(2, "F").Value) While Planilha1.Cells(linha, 1).Value <> "30/02/2021" valor1 = CDbl(Planilha1.Cells(linha, "B").Value) valor2 = CDbl(Planilha1.Cells(linha, "C").Value) 'se a data da coluna 1 estiver entre a dataInicia e dataFinal' If CDate(Planilha1.Cells(linha, 1).Value) >= dataInicial And CDate(Planilha1.Cells(linha, 1)) <= dataFinal Then 'somar valores' soma = soma + valor1 + valor2 End If 'passa para a proxima linha' linha = linha + 1 Wend 'coloca o valore da soma na coluna 10 da linha 2' Planilha1.Cells(2, 7) = soma Exit Sub fim: MsgBox "Não Foi possivel efetuar a soma" End Sub
-
Pessoal,Estou com uma macro que achei online para envio de whatsapp. Ela funciona bem. O problema é que todo o texto tem que ser escrito em um única célula e dessa forma, o texto não fica dividido em parágrafos, como eu gostaria. Apesar disso, a macro não deixa eu ampliar as células para a mensagem. Testei uma forma de escrever a mensagem que eu quero enviar diretamente no código, sem ser na planilha. Da certo, mas eu também não consigo fazer com que vá com os parágrafos separados certinhos. Sabem como resolver esse problema? Obrigada.
-
Bom dia, Tenho um pequeno sistema de registro de denúncias. O cadastro funciona, de boa, mas a pesquisa quando vou escolher as datas, aparece esse erro aqui: Erro em tempo de execução '-2147467259(80004005)': Erro não especificado Eis o código: Private Sub btnPesquisar_Click() Dim linhaFinal, linha, x As Integer ListBox1.Clear // o erro para aqui e não depura mais linhaFinal = Planilha1.Cells(Rows.Count, 1).End(xlUp).Row x = 0 For linha = 2 To linhaFinal If Planilha1.Cells(linha, 1).Value >= MonthView1 And Planilha1.Cells(linha, 1).Value <= MonthView2 Then ListBox1.AddItem Planilha1.Cells(linha, 1).Value ListBox1.List(x, 1) = Planilha1.Cells(linha, 2).Value ListBox1.List(x, 2) = Planilha1.Cells(linha, 3).Value ListBox1.List(x, 3) = Planilha1.Cells(linha, 4).Value ListBox1.List(x, 4) = Planilha1.Cells(linha, 5).Value x = x + 1 End If Next End Sub Porque isso acontece e o que pode ser feito? Preciso da ajuda dos colegas! Forte abraço! Resposta Rápida Resposta 1
-
Transpor dados de 1 coluna para Múltiplas linhas de outras Colunas
uma questão postou Bruno_2020 VBA
Olá a todos ! Gostaria de uma imensa ajuda! Eu recebo um arquivo no qual ele não organiza os tipos de Pausa dos vendedores numa mesma coluna (e sim e várias colunas chamadas "Pausa"), além de também não organizar a "Quantidade" e "Tempo" dessa pausa numa coluna só. As informações são inseridas ao longo de uma linha e eu gostaria que eles fossem organizados por colunas. Vou colocar aqui como é e como eu gostaria que fosse: OPERADOR PAUSA QTD TEMPO PAUSA QTD TEMPO PAUSA QTD TEMPO PAUSA QTD TEMPO Nome 1 BANHEIRO 0 00:00:00 ALMOÇO 0 00:00:00 LANCHE 0 00:00:00 AMBULATÓRIO 0 00:00:00 Nome 2 BANHEIRO 0 00:00:00 ALMOÇO 0 00:00:00 LANCHE 0 00:00:00 AMBULATÓRIO 0 00:00:00 Nome 3 BANHEIRO 0 00:00:00 ALMOÇO 0 00:00:00 LANCHE 0 00:00:00 AMBULATÓRIO 0 00:00:00 Gostaria que a informação viesse por colunas: "OPERADOR", "PAUSA", "QUANTIDADE" E "TEMPO", repetindo o nome do vendedor várias vezes na Coluna A, pra que as informações dele venham nas colunas seguintes, e não inseridas em linhas: OPERADOR PAUSA QUANTIDADE TEMPO Nome 1 BANHEIRO 0 00:00:00 Nome 1 ALMOÇO 0 00:00:00 Nome 1 LANCHE 0 00:00:00 Nome 1 AMBULATÓRIO 0 00:00:00 Nome 2 BANHEIRO 0 00:00:00 Nome 2 ALMOÇO 0 00:00:00 ... E assim por diante. O meu problema é que eu até consigo fazer a Coluna A me dar os vendedores ao transpor, mas quando faço isso na coluna B me vem tanto linhas de pausa, quanto quantidade e banheiro 😞 E como essa base sempre vem muitos vendedores e de forma variável, não sei como resolver isso ._. Agradeço desde já aos que puderem me dar um help ! -
vba VBA Importar dados de um txt criando abas para cada grupo de transações
uma questão postou FabioWizrd VBA
Olá a todos, Eu possuo um arquivo em txt, cujo o início de cada linha representa um tipo de transação. Meu objetivo é importar os dados de um arquivo TXT, agrupando os dados correspondentes de cada transação em uma aba nova e exclusiva para cada caso. Ex. Arquivo txt: Transação1;un;1;1,59;1,59;01/01/2018 Transação1;un;2;2;4;01/01/2018 Transação1;un;3;6;18;01/01/2018 Transação2;un;1;1,59;1,59;02/01/2018 Transação2;un;2;2;4;02/01/2018 Transação2;un;3;6;18;02/01/2018 Transação3;un;1;1,59;1,59;03/01/2018 Transação3;un;2;2;4;03/01/2018 Transação3;un;3;6;18;03/01/2018 Resultado Nova Aba Adjacente 1 = Transação1 Transação1 un 1 1,59 1,59 01/01/2018 Transação1 un 2 2 4 01/01/2018 Transação1 un 3 6 18 01/01/2018 Nova Aba Adjacente 2 = Transação2 Transação2 un 1 1,59 1,59 02/01/2018 Transação2 un 2 2 4 02/01/2018 Transação2 un 3 6 18 02/01/2018 Nova Aba Adjacente 3 = Transação3 Transação3 un 1 1,59 1,59 03/01/2018 Transação3 un 2 2 4 03/01/2018 Transação3 un 3 6 18 03/01/2018 Eu uso Excel 2016. Desde já agradeço a ajuda!! -
Olá galera, gostaria da ajuda de vocês. Preciso preencher duas tabelas iguais a que está no print a seguir, o problema é que gostaria de fazer isso com a ajuda do VBA, no caso eu tenho na planilha "Teste" uma lista de 70000 palavras e preciso que a partir de uma tabela que está preenchida o código verifique quais palavras ocorrem na lista independente de serem maiusculas ou minusculas, converta tudo para minuscula e cole a palavra na outra tabela vazia de modo que vá preenchendo a tabela vazia e eliminando as palavras lá da lista. Poderiam me ajudar? (A tabela a seguir começa na coluna A e vai até a coluna F) Essa é a tabela de testes
-
Boa tarde!Gostaria de saber ou quem puder me ajudar, fazer uma validação que, ao aparecer a caixa do Inputbox e ao clicar no campo vazio, fornecer uma mensagem de campo obrigatório e logo após aparecer novamente para digitar. Vou colocar o código aqui:Sub cadastro_agenda()nome = InputBox("Digite o nome:")telefone = InputBox("Digite o telefone:")setor = InputBox("Digite o setor:")lin = Range("A1").End(xlDown).Row + 1Cells(lin, 1) = nomeCells(lin, 2) = telefoneCells(lin, 3) = setor End SubEspero que possam me dar essa luz! Forte abraço!
-
Boa Tarde, estou tentando colorir e centralizar uma célula especifica, no caso a atual, mas não estou conseguindo, já fiz diversas pesquisas, encontrei coisas parecidas, mas não consigo juntar as peças, alguém poderia me ajudar? Criei a função abaixo, ela pega as celular que eu selecionei e me apresenta o coeficiente de variação (CV) já em porcentagem, isso está funcionando certo. O problema, eu gostaria que se esse resultado fosse maior do que 12, a célula fosse pintada de vermelho por exemplo e menor do que 12 pintada de verde, e por um capricho gostaria que esse valo ficasse centralizado na célula. Tentei varias formas, porém sem sucesso 😞 Function CV(rng As Range) Dim cell As Range For Each cell In rng Next cell CV = WorksheetFunction.StDev(rng) / WorksheetFunction.Average(rng) CV = FormatPercent(CV, 1) End Function
-
Olá pessoal, Preciso realizar uma macro para copiar cada um dos escritórios da XP no Brasil para uma planilha, porém estou com dúvida no começo do código. Realizei duas subs, uma que abre o IE e outra que processa o código HTML. O site em questão (https://www.xpi.com.br/sobre-a-xp/encontre-um-escritorio/) conta com dois objetos de tag "select", um que se refere aos estados ("states") e outro que se refere à cidade ("cities"). Minha dúvida é como atualizar o objeto "cities" ao escolher um estado da lista. Meu código até aqui é esse, porém ao selecionar o estado as cidades possíveis não são atualizadas, e, com isso, a minha cidade sempre retorna "Selecione a cidade": Sub EscritoriosXPIE() 'HABILITAR REFERÊNCIAS: Microsoft Internet Control, Microsoft HTML Object Library Dim IE As SHDocVw.InternetExplorer, HTMLDoc As MSHTML.HTMLDocument, HTMLButton As MSHTML.IHTMLElementCollection 'definindo objeto IE Set IE = New SHDocVw.InternetExplorer 'abrindo IE With IE .Visible = True .navigate "https://www.xpi.com.br/sobre-a-xp/encontre-um-escritorio/" 'pausar a macro enquanto carrega o navegador While .readyState <> READYSTATE_COMPLETE Wend End With 'abrindo o código HTML Set HTMLDoc = IE.Document Set HTMLButton = HTMLDoc.getElementsByTagName("button") ' 'printando número de botons ' Debug.Print HTMLButton.Length 'pesquisar escritórios XP ProcessarHtmlPage HTMLDoc End Sub Sub ProcessarHtmlPage(HTMLPage As MSHTML.HTMLDocument) 'HABILITAR REFERÊNCIA: Microsoft HTML Object Library Dim HTMLStates As MSHTML.IHTMLElement, HTMLCities As MSHTML.IHTMLElement Dim HTMLOptionState As MSHTML.IHTMLElement, HTMLOptionCity As MSHTML.IHTMLElement Dim HTMLButtons As MSHTML.IHTMLElementCollection Dim cont_states As Long, cont_cities As Long, state As Long, city As Long 'limpando a plan de trabalho Worksheets("Resumo").Select Cells.Delete 'definindo objetos HTMLState, HTMLCity e HTMLButton Set HTMLStates = HTMLPage.getElementById("states") Set HTMLButtons = HTMLPage.getElementsByTagName("buttons") 'definindo número de estados cont_states = HTMLStates.Length 'loop por todos os estados e cidades For state = 0 To cont_states Debug.Print HTMLStates.Item(state).innerText HTMLStates.selectedIndex = state Set HTMLCities = HTMLPage.getElementById("cities") cont_cities = HTMLCities.Length For city = 0 To cont_cities On Error Resume Next Debug.Print HTMLCities.Item(city).innerText Next city Next state End Sub Obrigado desde já pela ajuda!
-
Bom dia galera. Estou tendo meu primeiro contato com access e bancos de dados. Fui encarregado em meu serviço para fazer a comparação de dois bancos de dados (tambem estao disponiveis em excel, mas quero evoluir meu conhecimento com banco de dados). Preciso comparar os dois para obter quais notas fiscais que tem em uma banco, e não esta presente no outro. Tentei pelo VBA (conhecimento muito basico) e pelo SQL, mas infelizmente sem sucesso. Se alguém puder ajudar...
-
Olá pessoal, tudo bem? Sou iniciante no MySQL, essa semana veio uma dúvida de 10 milhões de dólares. O Chefinho querido me entregou uma planilha excel com 554 mil registros e me pediu para inserir isso na tabela para fazer levantamento de algumas informações. Aiiii me vêm aquele dúvida... Fazer 554 mil INSERT INTO (') ??? INSERT INTO `tab_teste_cliente` (`id_cliente`, `cnpj`, `razao_social`) VALUES ('NULL,'12345678901234','Empresa Linda'); Massssss... quando eu exporto uma tabela no MySQL, ele faz aqueles inserts com 200 valores. Isso torna o INSERT mais rápido é melhor certo? Então há alguma forma de converter o Excel para um arquivo SQL com esses Inserts múltiplos e facilitar minha vida? Algum site, script, gambiarra, subterfúgio técnico ou contato divino para fazer isso? Obrigado, pela ajuda pessoal até mais!