Pesquisar neste blog

03/11/2020

Eventos da planilha com Excel VBA #01

Excel 2010

























Private Sub Worksheet_SelectionChange(ByVal Target As Range)

ActiveCell.Value = "ALTERADO"

End Sub

Excel 2010



























Private Sub Worksheet_SelectionChange(ByVal Target As Range)

MsgBox Target.Address
MsgBox Target.Row
MsgBox Target.Column

End Sub

Funções na planilha com Excel VBA #02

Excel 2010



























Sub total()

Range("f3").Value = WorksheetFunction.CountA(Plan1.Columns("a")) - 1
Range("g3").Value = WorksheetFunction.Sum(Plan1.Columns("b"))
Range("h3").Value = WorksheetFunction.Sum(Plan1.Columns("c"))

End Sub

01/11/2020

Selecionar elementos em HTML #01

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Selecionar Elementos #01</title>
    <link rel="stylesheet" href="css/estilo.css">
</head>
<body class="conteudo exercicio">
    <div id="primeiro">#primeiro</div>
    <div>Segundo</div>
    <div class="terceiro ultimo">.terceiro .ultimo</div>
    <script>
        document.getElementById('primeiro').classList.add('destaque');/*passa um id*/
    
        const divs = document.getElementsByTagName('div')//vai pegar 1 único elemento div

        Array.from(divs).forEach(e => e.classList.remove('destaque'))
        // tranforma um HTML em 1 array de coleção
        const divsArray = [...divs]
        divsArray.forEach(e => e.classList.add('destaque'))

        const ultimosElementos = document.getElementsByClassName('ultimo');
        // 
        for(let e of ultimosElementos){
            e.classList.remove('destaque')//remove destaque
        }
    </script>
</body>
</html>



Gerador de código































(a + b) * (c + d) -e

MÉTODO 1

1- Movido a em R0, e o resultado é armazenado em R0
2- Adicionado b a R0 (como R0 contém a) e o resultado é armazenado em R0
3- Agora vamos armazenar R0 (a + b) em T1 e R0 se tornará livre
4- Aqui nós movemos c em R0
5- Vamos adicionar d a R0 (como R0 agora contém c) e o resultado é armazenado em Ro
6- Agora multiplicamos T1 (a + b) por Ro (agora contém c + d) e o resultado é armazenado em Ro
7- Aqui nós nutrimos e de Ro
8- O resultado é armazenado em T4 de R0

MÉTODO 2

1- Movido a em R0, e o resultado é armazenado em R0
2- Adicionado b a R0 (como R0 contém a) e o resultado é armazenado em R0
3- Aqui nós movemos c em R1
4- Vamos adicionar d a R1 (como R1 agora contém c) e o resultado é armazenado em Ro
5- Agora multiplicamos Ro (a + b) por R1 (já que Ro agora contém c + d) e o resultado é armazenado em R0 (Ro + Ro)
6- Aqui subtraímos e de R1
7- O resultado é armazenado em T4 de R1

CSS com grid em HTML 03

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>CSS Grid #03</title>
    <link rel="stylesheet" href="css/tag.css">
    <style>
        *{
            padding0;
            margin0;/*margem*/
        }

        header{
            grid-area: cabecalho;
        }

        nav{
            grid-area: navegacao;
        }

        main{
            grid-area: conteudo;
        }

        footer{
            grid-area: rodape;
        }

        body{
            displaygrid;
            min-height100vh;/*ocupa a altura iteira*/
            grid-template-columns300px 1fr;/* 1° coluna vai ser 300px e a 2° vai ocupar o espaço inteiro da tela*/
            grid-template-rows100px 1fr 100px;
            /*organização dos elementos na tela*/
            grid-template-areas:
            'cabecalho cabecalho'
            'navegacao conteudo'
            'rodape rodape'
            ;
        }
        /*  */
        @media(max-width700px){
            body{
                grid-template-columns1fr;
                grid-template-rows80px 1fr 100px;/*1fr= 1 frame, 100px= o máximo possível da tela*/
                grid-template-areas:
                
                'navegacao'
                'conteudo'
                'rodape';
            }

            header{/* cabecalho*/
                displaynone;
            }
        }

        header{
            displaynone;
        }
    </style>
</head>

<body>
    <main class="tag">CONTEÚDO</main>
    <header class="tag">CABEÇALHO</header>
    <footer class="tag">RODAPÉ</footer>
    <nav class="tag">NAVEGAÇÃO</nav>

    <script src="js/tag.js"></script>
</body>

</html>


Software: Visual Studio Code


CSS com grid em HTML 02

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>CSS Grid #02</title>
    <style>
        html,
        body {
            margin20px;
            heightcalc(100% - 40px);/*calcula a altura para 100%*/
            background-colorlightgray;/*cor de fundo cinza*/
        }
        
        div {
            displayflex;
            align-itemscenter;
            justify-contentcenter;/*quando a div aumentar ela ficará no meio*/
            font-size30px;
            bordersolid 5px dodgerblue;/*borda azul*/
            background#fff;
        }

        body{
            displaygrid;/*ocupa a tela inteira*/
            /* nome das linhas 'só irá aparecer o nome das linhas no navegador FireFox' */
            /*repete 3 colunas e 3 linhas com 1 fragmento*/           
            grid-template-columns
            [linha1] 1fr
            [metade-1 meio-1]
            1fr [metade-2 meio2]
            1fr [fim];
            grid-template-rowsrepeat(31fr);
            
            grid-column-gap20px;/*espaço de 20px no eixo da coluna*/
            grid-row-gap20px;/*espaço de 20px no eixo da linha*/
            grid-gap50px 10px;/*espaço de 50px na linha e 10px na coluna*/
            grid-gap10px;/*espaço geral para linha e coluna de 10px*/
        }

        .d1{
            grid-column-start: metade-2;
            grid-column-end: fim;
            grid-column: meio-1 / fim;/*entre meio 1 e o final*/
            grid-area1 / meio-1 / span 3 / fim;
        }
    </style>
</head>

<body>
    <div class="d1">1</div>
    <div class="d2">2</div>
    <div class="d3">3</div>
</body>

</html>

Software: Visual Studio Code


27/10/2020

CSS com grid em HTML 01

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>CSS Grid #01</title>
    <style>
        /* https://caniuse.com/#feat=css-grid */
        
        html,
        body {
            margin20px;
            heightcalc(100% - 40px);/*largura em 100% subtraido com a margem*/
            background-colorlightgray;
        }
        
        div {
            displayflex;
            align-itemscenter;
            justify-contentcenter;
            font-size30px;
            bordersolid 5px dodgerblue;
            background#fff;
        }

        
        body {
            displaygrid;/*linhas e colunas ativamente*/
            grid-template-columns50% 50%;
            grid-template-columnsrepeat(48.33% 8.33% 8.33%);/*repetir determinados valores*/
            grid-template-columnsrepeat(48.33%);/*4 colunas repetidas de 8.33*/
            grid-template-columnsrepeat(11100px)100px;
            grid-template-columns200px 20% 1fr;/*3 colunas, 1° coluna 100px, 2° 20%, 3° vai pegar 1 fragmento que está sobrando*/
            grid-template-columns3fr 6fr 3fr;
            grid-template-rows50% 25% 12.5% 12.5%;
            grid-template-rows100px 1fr;
            grid-template-rows100px auto;
        }

        .d8{
            grid-column-start2;/*inicia na coluna 2*/
            grid-column-end4;/*termina na linha 4 das colunas*/
            grid-column-end: span 2;
            grid-row-start3;/*inicia na linha 3*/
            grid-row-end5;
            grid-row-end: span 2;
        }

        .d10.d11{
            /* podem se sobrepor */
            grid-column-start1;
            grid-column-start3;
            grid-row-start5;
            grid-row-end: span 1;
        }

        .d10{
            z-index17;/*Profundidade dos elementos, fica na frente de quem*/

        }
    </style>
</head>

<body>
    <div class="d1">1</div>
    <div class="d2">2</div>
    <div class="d3">3</div>
    <div class="d4">4</div>
    <div class="d5">5</div>
    <div class="d6">6</div>
    <div class="d7">7</div>
    <div class="d8">8</div>
    <div class="d9">9</div>
    <div class="d10">10</div>
    <div class="d11">11</div>
    <div class="d12">12</div>
</body>

</html>

Saída gerada




10/10/2020

Menu com HTML/CSS

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>Desafio Menu</title>
    <link href="https://fonts.googleapis.com/css?family=Oswald" rel="stylesheet">
    <link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
    <style>
        body {
            margin0;
            font-family'Oswald'sans-serif;
            background-colorlightgray;
        }
        
        .cabecalho {
            background#333;
            color#fff;
            border-bottomsolid 5px #4faddb;
            height80px;
        }
        
        .logo img {
            height50px;
        }
        
        .menu ul {
            list-stylenone;
            margin0;
            padding0;
        }
        
        .cabecalho a {
            text-decorationnone;
            color#eee;
            font-size1.3em;
            padding10px 15px;
        }
        
        .menu a:hover {
            background-color#4faddb;
            color#000;
        }
        
        .cabecalho .botao {
            border-radius30px;
            padding10px 25px;
            margin-right10px;
        }
        
        .destaque {
            background#f50a31;
            color#fff;
        }
        /* ==================== */
        /* Solução com Flex Box */
        /* ==================== */
        .cabecalho {
            displayflex;
            align-itemscenter;
            justify-contentspace-between;/*espaço*/
        }

        .menu{
            flex-grow10;
        }
        
        .menu ul{
            displayflex;
            /* justify-content: space-around; */
        }

        .menu li{
            margin0px 10px;/*margem 0px na vertical e 10pixel na horizontal*/
        }

    </style>
</head>

<body>
    <header class="cabecalho">
        <div class="logo">
            <a href="#inicio">
                <img src="http://files.cod3r.com.br/curso-web/logo.png" alt="Logo" />
            </a>
        </div>
        <nav class="menu">
            <ul>
                <li>
                    <a href="#inicio">Início</a>
                </li>
                <li>
                    <a href="#cursos">Cursos</a>
                </li>
                <li>
                    <a href="#sobre">Sobre</a>
                </li>
                <li>
                    <a href="#contato">Contato</a>
                </li>
            </ul>
        </nav>
        <aside class="autenticacao">
            <a href="#login">Login</a>
            <a href="#registar" class="botao destaque">Registrar</a>
        </aside>
    </header>
</body>

</html>




FlexBox 03 com HTML/CSS

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>Flexbox #03</title>
    <style>
        div {
            bordersolid 5px dodgerblue;
            font-size40px;
        }

        .flex-container div {
            box-sizingborder-box;
            flex-directioncolumn;/*sentido da coluna*/
        }

        .flex-container{
            displayflex;/*layout para linha */
            flex-directioncolumn;
        }

        .flex-container div{
            flex-basis100px;
            width200px;
        }
        
        .flex-container div:nth-child(4){/*propriedade 4*/
            flex3 6 100px;/*propriedade de atalho*/

        }

        .flex-container{
            width300px;
        }
    </style>
</head>

<body>
    <div class="flex-container">
        <div>1</div>
        <div>2</div>
        <div>3</div>
        <div>4</div>
    </div>
</body>

</html>



Motor de Passo com PIC 16f877A

Objetivo: Fazer um motor de passo que gire no sentido horário, sentido anti -horário e seja controlado sua velocidade.

Código feito em CCS C Compiler

#include <16F877a.h>
#device ADC = 8
#fuses xt, nowdt, noprotect, put, brownout
#use delay(clock = 20MHz)
#include <lcd.c>

int pinos[] = {0b0001, 0b0010, 0b0100, 0b1000};
//Obs: A variável velocidade e tempo é apenas para demostração
//não é feito nenhum cálculo para calcular a velocidade de rotação do motor
int velocidade, tempo;

void CRESCENTE(){

   for(int i = 0; i < (sizeof(pinos)/sizeof(int)); i++){
      printf(lcd_putc,"\fSENTIDO: HORARIO\nTempo:%d us\tVelocidade= %d rad/s", tempo, velocidade);
      
      output_b(pinos[i]);
      delay_ms(100);
      output_low(pinos[i]);
      delay_ms(tempo);
   
   }
   
}

void DECRESCENTE(){
   printf(lcd_putc,"\fSENTIDO: ANTI-HORARIO\nTempo:%d us\tVelocidade= %d rad/s", tempo, velocidade);
   
   for(int j = (sizeof(pinos)/sizeof(int)); j >= 1; j--){
      output_b(pinos[j-1]);
      delay_ms(100);
      output_low(pinos[j]);
      delay_ms(tempo);
   }
}


void main(void){
     
   SETUP_ADC_PORTS(AN0);
   SETUP_ADC(ADC_CLOCK_INTERNAL);
   SET_ADC_CHANNEL(0);
      
   lcd_init();
   
   while(TRUE){
      velocidade = read_adc();
      printf(lcd_putc,"\fMotor de Passo:\nMotor OFF");
      delay_ms(20);
      
      while(input(pin_C2) == TRUE && input(pin_C5) == FALSE){
         velocidade = read_adc();
         tempo = read_adc() * 0.8;
         
         CRESCENTE();
         
      }
      
      while(input(pin_C2) == FALSE && input(pin_C5) == TRUE){
         velocidade = read_adc();
         tempo = read_adc() * 0.8;
         
         DECRESCENTE();
      }

   }
}




05/10/2020

Flex Box 02 em HTML

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>Flexbox #02</title>
    <style>
        div {
            bordersolid 5px dodgerblue;
            font-size40px;
        }

        .flex-container div {
            box-sizingborder-box;
        }

        .flex-container {
            displayflex;
            height300px;
            width600px;
        }

        .flex-container div:nth-child(3) {/*pegar o 3° e aplicar na div*/
            background-colorindianred;
            /* Ordem de como será manipulado */
            order1;
            order0;/*prioridade para elemento em último*/
            order-1;/*prioridade para elememto + pesado*/
            align-selfcenter;/*centralizado um elemento que está referenciando*/
            align-selfflex-end;
            align-selfflex-start;
            align-selfstretch;
        }

        .flex-container div {
            width100px;
            flex-grow0;
            flex-grow1;
        }

        .flex-container div:nth-child(1) {/*1° elemento referenciado*/
            flex-grow2;
        }

        .flex-container {
            width300px;
            flex-shrink1;/*vai encolher cada 1 de forma equivalente*/
        }

        .flex-container div:nth-child(1) {
            flex-shrink5;
        }
    </style>
</head>

<body>
    <div class="flex-container">
        <div>1</div>
        <div>2</div>
        <div>3</div>
        <div>4</div>
    </div>
</body>

</html>