Pular para o conteúdo principal

Destaques

Dynamic Island: Uma Análise Técnica da Área Dinâmica do iPhone

Dynamic Island: Uma Análise Técnica da Área Dinâmica do iPhone Entendendo a Nova Interface da Apple A Dynamic Island, introduzida com a linha iPhone 14, representa uma mudança significativa na interação com dispositivos móveis. Essa área, localizada no entalhe superior da tela, se adapta dinamicamente para exibir notificações, alertas e atividades em tempo real, proporcionando uma experiência mais fluida e intuitiva. Sua implementação demonstra a capacidade da Apple em integrar hardware e software de forma inovadora, otimizando o espaço da tela e a usabilidade. A funcionalidade da Dynamic Island vai além de simples notificações. Ela permite o gerenciamento rápido de aplicativos, exibindo informações relevantes sem interromper a tarefa em andamento. Por exemplo, durante uma chamada telefônica, a Dynamic Island pode mostrar o tempo de duração da chamada ou permitir o acesso rápido a controles de volume. Estamos em fevereiro e a Western Digital esgotou o estoque de HDs para o ano , o que...

Como converter números em texto por extenso no google planilhas - respondendo comentários

Como converter números em texto por extenso no google planilhas - respondendo comentários

Neste vídeo mostro como converter números em texto por extenso no google planilhas.

Você verá dois modos de fazer este procedimento, sendo um por fórmulas na planilha (não sou o autor) e outro por script (não sou o autor).



E com estes dois métodos, quando digita um valor numérico na célula, ocorre a conversão automática por extenso.
No caso do script, não somente extenso monetário, mas o valor numero sem a notações da moeda.

Abaixo deixo os links:

Modelo de recibo om valores por extenso por fórmulas

Modelo de recibo om valores por extenso por script


Link do post dos autores:

Planilha da Ingrid

Script do Marcelo

Link do vídeo

Script:

/*******************************************************************************
Função......: Extenso
Autor.......: Marcelo Camargo - [email protected]
Versão......: 1.0 Beta
Data........: 12/12/2016
Descrição...: Conversão de números para texto descritivo
              Funcionamento para números inteiros e decimais com até 2 casas
              Opção para uso com moedas (informar parâmetros)
              Idioma português brasileiro
Parâmetros..: Valor numérico
              Moeda no singular
              Moeda no plural
              Decimal da moeda no singular
              Decimal da moeda no plural
Exemplos....: =Extenso(A1)
              =Extenso(A2;"real";"reais";"centavo";"centavos")
              =Extenso(A3;"dólar";"dólares";"centavo";"centavos")
              =Extenso("?") -> Retorna os créditos
*******************************************************************************/
function Extenso(n,moeda,moedas,centavo,centavos){
  var j,x,m,r,ri,rd,d,i,casas,erro;
  var v1=0,v2=0,v3=0,v4=0,v5=0,v6=0;
  r="";
  rd="";
  ri="";
  i=parseInt(n);
  d=n-i;
  d=d.toFixed(2);
  d=d*100;
  d=d.toFixed(0);
  casas=i.toString().length;

  if(n=="?"){return "Função Extenso() Marcelo Camargo - [email protected]";}
  if(n<0){return "Erro: número negativo";}
  if(moeda!=null){if(moedas==null || centavo==null || centavos==null || moeda=="" || moedas=="" || centavo=="" || centavos==""){return "Erro: parâmetros de moeda";}}

  if(d==100){
    d=0;
    i=i+1;
  }

  if(casas>12){
    v5=(parseInt(i/1000000000000)*1000000000000-parseInt(i/1000000000000000)*1000000000000000)/1000000000000;
    if(v5>0){
      j="";
      x=CentenaExtenso(v5);
      if(v5>1){ri=ri+j+x+" trilhões";}else{ri=ri+j+x+" trilhão";}
    }
  }
  if(casas>9){
    v4=(parseInt(i/1000000000)*1000000000-parseInt(i/1000000000000)*1000000000000)/1000000000;
    if(v4>0){
      if(v5){j=", ";}else{j="";}
      x=CentenaExtenso(v4);
      if(v4>1){ri=ri+j+x+" bilhões";}else{ri=ri+j+x+" bilhão";}
    }
  }
  if(casas>6){
    v3=(parseInt(i/1000000)*1000000-parseInt(i/1000000000)*1000000000)/1000000;
    if(v3>0){
      if(v4+v5){j=", ";}else{j="";}
      x=CentenaExtenso(v3);
      if(v3>1){ri=ri+j+x+" milhões";}else{ri=ri+j+x+" milhão";}
    }
  }
  if(casas>3){
    v2=(parseInt(i/1000)*1000-parseInt(i/1000000)*1000000)/1000;
    if(v2>0){
      if(v3+v4+v5){j=", ";}else{j="";}
      x=CentenaExtenso(v2);
      if(v2==1){
        ri=ri+j+"mil";
      } else {
        ri=ri+j+x+" mil";
      }
    }
  }
  if(casas>0){
    v1=(parseInt(i).toFixed(0))-(parseInt(i/1000).toFixed(0)*1000);
    if(v1>0){
      if(v2+v3+v4+v5){if(v1<=100){j=" e ";}else{j=", ";}}else{j="";}
      x=CentenaExtenso(v1);
      ri=ri+j+x;
    }
  }

  if(moeda==null){
    moedas="inteiros";
    moeda="inteiro";
    centavos="centésimos";
    centavo="centésimo";
  }
  if((d!=0 && moeda=="inteiro") || moeda!="inteiro"){
    if(i>0 && !v1){ri=ri+" de "+moedas;}
    else if(i>1 && v1==1){ri=ri+" "+moedas;}
    else if(v1==1){ri=ri+" "+moeda;}
    else if(v1>1){ri=ri+" "+moedas;}
    else if(i==1){ri=ri+" "+moeda;}
  }

  if(d==1){
    rd="um "+centavo;
  } else if(d>1 && d<100){
    rd=CentenaExtenso(d)+" "+centavos;
  }
  if(i<1 && d>0 && moeda!="inteiro"){
    rd=rd+" de "+moeda;
  }else if(i==0 && d==0){
    rd="zero "+moeda;
  }

  if(d>0 && i>0){
    rd=" e "+rd;
  }
 
  r=ri+rd;
  return r;
}

function CentenaExtenso(n){
  var u,d,c,casas;
  var r="";
  var t1=["um","dois","três","quatro","cinco","seis","sete","oito","nove"];
  var t2=["dez","onze","doze","treze","quatorze","quinze","dezesseis","dezessete","dezoito","dezenove"];
  var t3=["vinte","trinta","quarenta","cinquenta","sessenta","setenta","oitenta","noventa"];
  var t4=["cento","duzentos","trezentos","quatrocentos","quinhentos","seiscentos","setecentos","oitocentos","novecentos"];
  casas=n.toString().length;
  u=0;d=0;c=0;
  if(n>0) {u=parseInt(n.toString().substr(casas-1,1));}
  if(n>9) {d=parseInt(n.toString().substr(casas-2,1));}
  if(n>99){c=parseInt(n.toString().substr(casas-3,1));}
  if(n==100){return "cem";}
  else {
    if(c>0){
      r=r+t4[c-1];
      if(d>0 || u>0){r=r+" e ";}
    }
    if(d>1){
      r=r+t3[d-2];
      if(u>0){r=r+" e ";}
    } else if(d==1 && u>=0){
      r=r+t2[d+u-1];
    }
    if(u>0 && d!=1){
      r=r+t1[u-1];
    }
  }
  return r;
}

Imagem na Teia - INT na Internet

DIVULGAÇÃO AFILIADA: Este vídeo e descrição ou texto, podem conter links de afiliados, o que significa que, se você clicar em um dos links de produtos, receberei uma pequena comissão. Não colocarei aqui nada que não tenha verificado e / ou usado pessoalmente.

Comentários

  1. Passando aqui para agradecer o Tutorial, ajudou perfeitamente no que eu precisava!! Obrigado à todos envolvidos.

    ResponderExcluir

Postar um comentário

Postagens mais visitadas