Categorias
Dicas Windows

Como rodar um programa no Windows como Administrador sem pedir senha

No Windows quando você precisa rodar um programa como Administrador usando um usuário básico, a cada execução é solicitada a senha de um usuário com privilégios de Administrador e não há a opção de não perguntar novamente.

Para evitar isso é possível criar um atalho que executa como Administrador e salva as credenciais. Para isso basta ir na Área de trabalho, clicar com o botão direito e ir em Novo > Atalho:

Na tela que abrir, digite o seguinte commando:

runas /user:NOME-DO-COMPUTADOR\node_do_usuario /savecred "cmd /c \"C:\caminho\para\programa.exe\""

Trocando o NOME-DO-COMPUTADOR\node_do_usuario pelo seu respectivo computador e nome de usuário com permissão de Administrador, além do caminho para o programa que deseja executar.

Feito isso, o atalho criado só pedirá a senha do Administrador na primeira execução e guardará as informações para as próximas.

Caso você não saiba o nome do computador ou o nome do usuário, pode abrir um Prompt de Comando (executar > cmd) e digitar o comando:

net user

Categorias
Dicas Windows

Como criar link simbólico para um diretório no Windows

No Linux é muito comum criar links simbólicos, é um jeito pratico de apontar para um arquivo sem precisar movê-lo.

Para fazer o mesmo no Windows, o comando é o mklink, sendo o primeiro parâmetro o caminho do link simbólico e o segundo o caminho da pasta de origem. Exemplo:

mklink /J "C:\Users\{user}\OneDrive\work" "C:\work\project"

No exemplo acima, adicionei meu diretório C:\work\project ao C:\Users\{user}\OneDrive\work, assim o diretório passou a ser sincronizado pelo OneDrive sem eu precisar movê-lo.

Categorias
Dicas Excel

Somar valores dentro de um período de datas com Excel

Dado que você tenha uma série de dados com as respectivas datas e você precise soma-los baseado no período de tempo que eles ocorreram, como por exemplo somar todas as vendas por mês.

É possível fazer isso de forma fácil no Excel usando a fórmula SUMIFS (SOMASE em português):

=SUMIFS(valores; datas; ">=" & DATE(ano,mês,dia); datas; "<=" & DATE(ano,mês,dia))

Onde:

  • valores: É o range da valores que serão somados
  • datas: É o range de datas que serão comparados

Exemplo:

Exemplo de soma por período
Exemplo de soma por período

Nesse exemplo também utilizei as funções YEAR e MONTH (ANO e MES em português) para extrair o ano e mês das células e não precisar editar a fórmula para cada período que eu quiser utilizar.

Categorias
Dicas Excel

Encontrar a enésima ocorrência de um valor no Excel

Já fiz um post mostrando como encontrar a última ocorrência de um determinado valor no Excel, mas agora vou mostrar como é possível encontrar o número da linha da enéssima ocorrência de um determinado valor.

Dado que você tenha uma planilha, como a seguinte:

Se eu buscar pela terceira ocorrência de “Café”, quero que a função retorne o valor 8, que corresponde ao número da linha. Para isso, utilizaremos as funções SMALL e ROW (MENOR e LIN em português):

=SMALL(IF(E1=$A$2:$A$10; ROW($A$2:$A$10)-ROW($A$1)+1); E2)

Essa é uma função matricial, então para aplica-la utilize CONTROL+SHIFT+ENTER.

Resultado

Caso queira o valor associado ao invés do número da linha, utilize a função acima em conjunto com a função INDEX (ÍNDICE em português):

=INDEX($B$2:$B$10;SMALL(IF(E1=$A$2:$A$10;ROW($A$2:$A$10)-ROW($A$2)+1);E2))

Aplique com CONTROL+SHIFT+ENTER.

Resultado

Categorias
Dicas Excel

Encontrar a última ocorrência de um determinado valor no Excel

Dado que você tenha uma planilha com diversos valores repetidos, como encontrar a última ocorrência de um dado valor? Existem diversas formas de resolver isso, a mais simples é usando a função LOOKUP (ou PROC em português) do Excel.

Suponha que você tenha uma planilha com alguns dados, como itens de uma compra e o valor e queira encontrar o valor que pagou na última vez que comprou um determinado item:

planilha exemplo

Nesse exemplo, se eu procurar por “Caneta” a função deve retornar o valor “R$ 2,50”. A chamada da função fica assim:

=LOOKUP(2;1/(A2:A5=D2);B2:B5)

Resultado

Resultado

Explicação
No segundo parametro usamos 1/(A2:A5=D2) como vetor de procura, onde (A2:A5=D2) irá retornar um vetor com valores TRUE/FALSE para cada índice indicando se corresponde ou não ao valor procurado. Dividindo isso por 1, teremos um vetor com 1s ou erro #DIV/0!.

Ai que entra a mágica, o primeiro parâmetro da função é o valor buscado no vetor, como passamos o valor 2 e nosso vetor de procura não tem nenhum, a função retornará o último número (o último 1) do vetor que corresponde ao índice da linha que procuramos no vetor de resultado (B2:B5).