Ir ao conteúdo
  • Cadastre-se

Basole

Membro Pleno
  • Posts

    2.019
  • Cadastrado em

Tudo que Basole postou

  1. Sim é possivel, e nao ha contra-indicacao. Já instalei office 2007 32bts.no win8 64Bts. e rodou perfeitamente. O unico problema que voce possa encontrar, ( caso use constantemente os controles ActiveX ) é o conflito de pastas, entre a pasta System32, e a pasta SysWOW64, que armazena os respectc drives. Instale e seja feliz. abx.
  2. Sergio, segue sugestao em vba, que envia o email de acordo que voce precisa. * Mas para q a imagem 'carregue' no corpo do email, como se fosse um banner, voce precisa ter sua imagem na web, e informar o endereço (url) ao codigo. A imagem q postei de exemplo do codigo foi no site gratuito: http://postimage.org/ Public Sub Enviar_mail() Dim myOutlook As Object, msg As Object Dim ImagemUrl As String Set myOutlook = CreateObject("Outlook.Application") Set msg = myOutlook.CreateItem(olMailItem) ImagemUrl = "http://s30.postimg.org/wud4sq8u9/55213_Papel_de_Parede_Surf_1600x1200.jpg" 'AQUI a url da imagem hospedada With msg .To = "[email protected]" 'AQUI altere o email do destinatario. .CC = "" .BCC = "" .Subject = "Email Teste [Corpo Imagem]" '.Attachments.Add "c:\Temp\image002.png", olByReference, 1 .HTMLBody = "<img border='0' src=" & ImagemUrl & "width='900' height='510'>" .Send End WithEnd Sub abx
  3. brigaduuu pela parte que me toca... Fiz o que pediu, inclui seu codigo na minha rotina. E acrescentei uma formataçao condicional via vba, (acredito que desempenha melhor que a nativa do excel). abx. Pop-Pup-2003-2007-v9.xls
  4. Fiz algumas alteraçoes no codigo q postei anteriormente Pois somente duplicados consecutivos estava sendo removidos: Sub Proc_Dupli_Deleta() ' Macro identifica valores duplic. na coluna "H" e deleta a linha inteira Dim cel As Variant Dim rng As Range Dim ws As Worksheet Dim i, ul As Long Application.ScreenUpdating = False Set ws = Sheets("plan1") 'AQUI: Altere de acordo c/ nome sua plan ul = ws.Cells(Rows.Count, 8).End(xlUp).row Set rng = ws.Range("h4:h" & ul) For Each cel In rng If Application.WorksheetFunction.CountIf(rng, cel) > 1 Then cel.Select For i = ActiveCell.row + 1 To ul If ws.Cells(i, "h").Value = cel Then ws.Cells(i, "h").EntireRow.Delete ' del linha duplicada i = ActiveCell.row Else End If If Application.WorksheetFunction.CountIf(rng, cel) = 1 Then GoTo pxl Next Else pxl: End If Next Application.ScreenUpdating = True End Sub 'Em anexo a planilha teste c/ a codificacao e a macro automatica. '* Como o processo está automatico, ao digitar, ou colar um dado que já existe (na coluna H), ao piscar de olhos esse 'valor 'será deletado. 'Caso queira deixar manualmente, desabilite a macro no evento :Private Sub Worksheet_Change(ByVal Target As Range) 'e coloque um atalho de teclado ( Alt + F8 -> Em opções ), para executar a macro. 'abx. Modelo - Follow-up-v2.zip
  5. Bom esse ex. atualiza os dados do xml, mantendo o dados existentes e acrescentando 'novos' dados contidos nas celulas informadas e a virgula (,) como separaçaõ De acordo com o codigo a formatação final é fica assim: <fixos>380,360</fixos><cartao>1000,900</cartao><extras>150,320</extras><mes>Janeiro,Dezembro</mes> segue abaixo o codigo: Private Sub CommandButton2_Click() Dim Var As String, pathXML As String Dim xmlarq As Object, xmlRoot As Object Set xmlarq = CreateObject("MSXML2.DOMDocument") pathXML = "c:\temp\exemplo.xml" ' altere aqui o nome e o diretorio do seu "arq. XML" Call xmlarq.Load(pathXML) Set xmlRoot = xmlarq.getElementsByTagName("gastoss").Item(0) With ActiveSheet xmlRoot.SelectSingleNode("fixos").Text = .Cells(11, "D").Value & "," & xmlRoot.SelectSingleNode("fixos").Text xmlRoot.SelectSingleNode("cartao").Text = .Cells(12, "B").Value & "," & xmlRoot.SelectSingleNode("cartao").Text xmlRoot.SelectSingleNode("extras").Text = .Cells(20, "E").Value & "," & xmlRoot.SelectSingleNode("extras").Text xmlRoot.SelectSingleNode("mes").Text = .Cells(2, "B").Value & "," & xmlRoot.SelectSingleNode("mes").Text End With Call xmlarq.Save(pathXML) End Sub 'abx.
  6. Mas tentando a adaptação, estou tendo conflitos com a Condicional em anexo. Ele não se alinha com a linha selecionada. Nao entendi o que quer dizer com se a linha c/ a linha selecionada (???) E tbém quando clico em K11, aparece br na frente da palavra e ainda aumenta a altura da linha. Está ocorrendo somente em K11. No ultimo modelo que postei, está normal, e nao aparece "br" em nenhuma celula e nenhum momento. Olhando a imagem que postou, existe um trecho de codigo (no mesmo evento), que nao faz parte de nenhuma versão que postei, ou seja foi alterado. então, fica difícil dar algum parecer sem ver o arquivo. Se puder enviar o arquivo via MP, posso ver o que esta acontecendo. abx.
  7. Pelo que entendi, voce quer copiar os dados das celulas destacadas do (modelo.xlsx), e colar na pasta de trabalho 'banco de dados' . Sendo assim, preciso saber em quais celulas serao coladas os dados no banco de dados? Se puder enviar um modelo de banco de dados, indicando essas celuas, seria muito util. abx.
  8. Felipe, fiz uma sugestao: A macro deleta a (s) linha(s) (inteira), caso o valor da celula (da coluna H), for igual a anterior, mantendo somente 1 (um) valor de (H) distinto. Cole em um modulo: Sub Proc_Duplicados() Dim cel As Variant Dim rng As Range Dim ws As Worksheet Set ws = Sheets("plan1") 'altere aqui de acordo c/ nome sua plan Set rng = ws.Range("h4:h" & Cells(Rows.Count, 8).End(xlUp).Row) For Each cel In rng If Application.WorksheetFunction.CountIf(rng, cel) > 1 Then cel.Select bk: If ws.Cells(ActiveCell.Row + 1, "h").Value = cel Then ws.Cells(ActiveCell.Row + 1, "h").EntireRow.Delete GoTo bk Else End If End If Next End Sub Pra ficar 'tomatico' quando. alterar alguma celula: chame a macro no evento: Private Sub Worksheet_Change(ByVal Target As Range) Call Proc_Duplicados End Sub abx.
  9. ola Janaina Souza, seja bem vinda ao forum!! Sim é possivel, fazer isso que voce deseja, mas pra isso precisamos identificar o intervalo (de celulas) que voce esta querendo copiar, se puder compartilhar um modelo (pode ser com dados ficticios), destacando este intervalo, fica mais fácil compreender. abx.
  10. Editei e anexei no meu poste anterior..
  11. Mexeeee cum coisa veia é uma encenca hein? kkkkkkkkkkkkkkkkkkkkkkkkkkkk Bom eu retirei os botões de Comando (activeX). Agora é so voce inserir as listas suspensas nas celulas envolvidas, ou deixar como está (arroz cum fejão), e caso queira alterar os ajustes, é so inserir ("manuel mente") os dados validos para cada celula. Abx. Editado: ops's esqueci de anexar Pop-Pup-2003-2007-v8.xls
  12. Agradeço pela ajuda, só ficou faltando um detalhe. o número de volume fica defenido pela planilha "Formulario" em P2 e digitado o nº de vol. que pode ser qualquer valor. Bom essa informação você nao apresentou no primeiro post. se nao ja tinha resolvido. Segue abaixo. codigo alterado. Sub Print_Etiqueta() Dim i As Long Dim ws As Worksheet Set ws = Sheets("Etiqueta") i = 1 With ws For i = i To .[p2] .Range("n2") = i ' atualiza o nº volume .PageSetup.PrintArea = "" 'Limpa a area definida .PageSetup.PrintArea = .Range("b1:q10").Address 'define a area a imprimir .PrintOut 'imprime Next End With End Sub
  13. pois é, pra criar os " botõezinhos" você tem que inserir Botao de Comando (activeX). Inseri esses botões porque. como disse anterirmente, o excel 2003 tem um bug, e a validação estava 'sumindo' depois de um certo tempo. Mas voce pode fazer o 'arroz cum fejão' e inserir a validação( lista suspensa) nas celulas envolvidas. Segue um link de um passo a passo: http://blog.luz.você/excel/como-realizar-validacao-de-dados/
  14. Bom dia jcgmc, pelo contrario! fico doente quando não bebo...kkkkkkkkkkkkkkkkkkkkkkkkkkkk Bom fiz a alteração e para não brigar ( entrar em conflito) com do excel, defini as teclas [ Shift + ESC ], para "deletar" o pop-up, ok e agora o esc esta 'funfando' perfeitamente. Parece que agora ficou show de bola. !! abx. Pop-Pup-2003-2007-v7.xls
  15. Elcio, [ Alt + F11 ] ,e crie um modulo, em seguida cole o codigo abaixo, [ Alt+ F8 ] e execute a macro 'Print_Etiqueta' Sub Print_Etiqueta() For i = 1 To 5 With Sheets("Etiqueta") .Range("n2") = i ' atualiza o nº volume .PageSetup.PrintArea = "" 'Limpa a area definida .PageSetup.PrintArea = .Range("b1:q10").Address 'define a area a imprimir .PrintOut 'imprime End With Next End Sub
  16. Ola Kelvim, veja se esta macro atende suas necessidades: 1 - Copie e cole em um modulo o cod abaixo: (veja, que voce pode incluir outras teclas (caracteres) nesta linha do codigo: TeclaArray = Array("1", "2", "3", "#", "4", "5", "6", "7", "8", "9", "0") ) Sub Desabilita_Numeros() Dim TeclaArray As Variant Dim Tecla As Variant TeclaArray = Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "0") For Each Tecla In TeclaArray Application.OnKey Tecla, "Mensagem" Next Tecla End SubSub Mensagem() MsgBox "Aperte outra tecla"End Sub 2 - Copie e cole no editor de "Esta_Pasta_de_Trabalho" cod abaixo: (Para habilitar a macro tomaticamente, ao abrir a pasta de trabalho) Private Sub WorkBook_Open() MsgBox "Habilitado a macro: Desabilita_Numeros()" Call Desabilita_NumerosEnd Sub * se preferir desabilite as mensagens incluidas nos codigos
  17. Felipe, apesar de solicitar uma formula, segue opção c/ macro: Sub Busca() Dim ws1, ws2 As Worksheet Dim i As Long: i = 4 Dim ul, ul2 As Long Dim o que As String Set ws1 = Sheets("plan1") Set ws2 = Sheets("plan2") ul = ws1.Cells(Rows.Count, "q").End(xlUp).Row ul2 = ws2.Cells(Rows.Count, "a").End(xlUp).Row With ws2.Range("a1:a" & ul2) For i = i To ul o que = ws1.Range("q" & i) Set C = Nothing Set C = .Find(o que, , LookIn:=xlValues, lookat:=xlWhole) If Not C Is Nothing Then firstAddress = C.Address Do ws1.Range("r" & i) = C.Offset(0, 1).Value Set C = .FindNext© Loop While Not C Is Nothing And C.Address <> firstAddress Else ws1.Range("r" & i) = "Não existe endereço" End If Next End With End Sub Editado: Nao havia entendido o que queria dizer c/ Bx, mas ja corrigi o codigo acredito q agora está de acordo. Desconsidere o anexo, ou copie o codigo acima e cole no modulo1, substituindo o presente. Teste 1-v1.zip
  18. salvir, postei um exemplo para uma situação parecida com a sua. Veja se consegue adaptar a sua necessidade: http://forum.clubedohardware.com.br/forums/topic/1089563-enviar-diversos-arquivos-para-pessoas-diferentes/
  19. Segue em anexo c/ a rotina ajustada p/ criar novos clientes de acordo com os dados do intervalo "b2:b18" da planilha "base". A macro oculta a plan( aba) 'modelo' p/ evitar q por acidente alguem delete. Caso queira tornar visivel, siga as instruçoes. calculo mensal.zip
  20. Segue rotina para criar e nomear nova planilha(aba), no caso novo cliente. Para testar, abra um nova pasta de trabalho, crie um modulo (Alt+F11), e cole o codigo abaixo. Renomeie a plan1 como "Clientes" e na "a2" insira o nome do cliente. Na plan2 renomeie como modelo (seria a planilha modelo do seu cliente), e aperte as teclas (Alt+f8) e exceute a macro 'Novo_Cliente' Private Sub Novo_Cliente() Dim ws As Worksheet Set ws = Sheets("clientes") 'verifica se o nome é repetido For k = 3 To Worksheets.Count If Sheets(k).Name = ws.[a2] Then MsgBox "Este nome já existe!", _ vbInformation, "Erro!" Exit Sub End If Next 'solicita autorização If MsgBox("Deseja cadastrar este cliente?", _ vbYesNo + vbQuestion, "Atenção!") = vbNo Then Exit Sub Application.ScreenUpdating = False 'deixa a aba visível, copia e oculta Sheets("MODELO").Visible = True Sheets("MODELO").Copy After:=Sheets("CLIENTES") Sheets("MODELO").Visible = False 'nomeia a nova aba ActiveSheet.Name = ws.[a2] 'Dim strformula As String 'strformula = "='" & ActiveSheet.Name & "'!D2" 'vai para aba clientes Sheets("CLIENTES").Select Application.ScreenUpdating = True End Sub * no momento q estava postando você anexou um modelo, poriso nao considerei esta ação.
  21. Tahh!! Quanto a versão, resolvido!! Num tendi de 12 pra 11 mas funcionouu!! Rsss Pra tentar explicar isso, vamos recorrer um pouco a cultura inutil: 8 versao do offcie 97, 9 office 2000, 10 office 2002, 11 é o numero da versao do office 2003, 12 do 2007, 14 do office 2010, 15 office 2013, ai você me pergunta e o 13 ? __Pergunte pro Bill, mas acho que por supertição. (vj + aqui: http://pt.wikipedia.org/wiki/Microsoft_Office ) Bom fiz o que pediu acima, mas não com lista suspensa de validação, pois acho que o 2003 tem algum 'bug' que faz com que as opções de alteração da lista 'somem', e ai você nao consegue alterar mais as opções. Então eu inseri as opções com combobox(s). quando. estiver c/ o s ballas na mao me avise. abx. Pop-Pup-2003-2007-v6.xls
  22. Aconteceu quase a mesma coisa comigo, quando tentei desinstalar o office 2010 32 bits do note da minha esposa. E quando tentei instalar o office 64 bits, recebia mensagem parecida com a sua. Pesquisando encontrei uma ferramenta num site da microsoft que removeu todos os vestijos da instalação anterior, ai consegui proceguir com e instalar com exito. Acho que é este o site que baixei, se não me engano: http://blogs.technet.com/b/office_br/archive/2011/06/14/problemas-com-a-desinstala-231-227-o-do-office-2010-2007-ou-2003-no-painel-de-controle-use-a-fix-it-tool.aspx abx.
  23. Uai nu tô veno nehum anesso sô??? Mas acredito que seja esse o pobrema (abaixo), pois como desestalei o 2007 na maq. virtual p/ instalar o 2003, nao tive como testar na tal versao e criei esse peq. equivoco. 'Substitua esta linha no código:If Application.Version <= "12.0" Then' ****** Por esta: *********************If Application.Version <= "11.0" Then Abx.
  24. ae my bro estive 1/2 ocupado. Bom terminei aqui. Ja separou os ballas ???? heheheehe Eu ajustei o codigo para rodar em quarque versao, caso amanha voce atualize seu office, num vai te problema, pois a macro verifica a versão e aplica o comando adequado. Tá certo que no modo que inser o texto no pop-up na versão > 2007 é mais rápido para o < 2003. Fica mei complicado ajustar a altura do pop-up, pois as variaveis fonte tam. de fonte, etc da diferença. Eu ajustei com a fonte arial 9. se alterar vai dar dif. Outra coisa: Para a macro encontrar os dados e classificar pela data (crescente), no intervalo "AP a BL" voce deve sempre inciar os dados com esta formatação Ex.: ( Em 08/10/14 ....bla... bla.. bla ...bla.........), caso contrario, vai dar error ou vai encontrar " " ( em branco). Pop-Pup-2003-2007-v5.zip

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