none
Macro para excel 2010

    Question

  • Boa Tarde

     Tenho um arquivo texto da fatura de telefonia da Tim que importo pro excel , nele tenho uma coluna com total de cada ligação , preciso somar estes minutos , mas nessa coluna a marcação fica com "1m32s".

     Gostaria de ver se alguem sabe como somar estes numeros , pensei em fazer uma macro para alterar as letras nessa coluna , substituir o "m" por "," e o "s" por vazio.

     Alguem teria uma idéia de como fazer isso ?

    Grato.

    Sunday, February 03, 2013 3:48 PM

Answers

  • Olá Felipe!!

    Acho que posso te ajudar, criei uma macro que substitui a letra "m" por "," (vírgula) e "s" por vazio. Veja as instruções de código abaixo, certamente deve resolver o seu problema.

    Sub Substituir()

    'Selecionando a coluna "E", supondo que seja nessa coluna que esteja contido o total das ligações.
    Range("E:E").Select

    'Comando para selecionar os valores da coluna e substituir de "m" para ",".
    'Caso queira substituir por outro caractere, como dois pontos por exemplo ":", basta você substituir
    'a vírgula do código por qualquer outro que você desejar.
    Selection.Replace What:="m", Replacement:=","

    'O mesmo comando é utilizado para substituir "s" por vazio.
    Selection.Replace What:="s", Replacement:=""

    End Sub

    Depois, basta você criar uma soma simples...  mas eu te aconselho a substituir "m" por ":" (dois pontos), porque fica num formato melhor para somar.  Boa sorte...

    Att

    • Marked as answer by felipe_cardoso Tuesday, February 05, 2013 12:50 PM
    Monday, February 04, 2013 12:59 AM

All replies

  • Ola Felipe, boa tarde.

    Vou migrar a sua dúvida para o fórum especializado em VBA e códigos para Macros.



    Hezequias Vasconcelos

    Sunday, February 03, 2013 5:13 PM
    Moderator
  • Olá Felipe!!

    Acho que posso te ajudar, criei uma macro que substitui a letra "m" por "," (vírgula) e "s" por vazio. Veja as instruções de código abaixo, certamente deve resolver o seu problema.

    Sub Substituir()

    'Selecionando a coluna "E", supondo que seja nessa coluna que esteja contido o total das ligações.
    Range("E:E").Select

    'Comando para selecionar os valores da coluna e substituir de "m" para ",".
    'Caso queira substituir por outro caractere, como dois pontos por exemplo ":", basta você substituir
    'a vírgula do código por qualquer outro que você desejar.
    Selection.Replace What:="m", Replacement:=","

    'O mesmo comando é utilizado para substituir "s" por vazio.
    Selection.Replace What:="s", Replacement:=""

    End Sub

    Depois, basta você criar uma soma simples...  mas eu te aconselho a substituir "m" por ":" (dois pontos), porque fica num formato melhor para somar.  Boa sorte...

    Att

    • Marked as answer by felipe_cardoso Tuesday, February 05, 2013 12:50 PM
    Monday, February 04, 2013 12:59 AM
  • Bom Dia eddu

     Funcionou seu script , muito obrigado.

    Tuesday, February 05, 2013 12:51 PM
  • Eddu, boa noite.
    Consegui com seu código fazer uma macro para mudar "Ponto" por "vírgula" dentro de uma aba inteira de uma planilha, entretanto, quando coloco apenas um intervalo reduzido, tipo "S3:W26", não ocorre a mudança. Ele apenas seleciona os dados, mas não muda. 
    O que devo fazer ?
    Saturday, March 07, 2015 2:10 AM
  • Luan, tente algo como:

    Worksheets("Plan1").Range("S3:W26").Replace What:=".", Replacement:=","

    Altere Plan1 para o nome da sua planilha.


    Felipe Costa Gualberto - http://www.ambienteoffice.com.br

    Monday, March 09, 2015 2:08 PM
    Moderator