Logo Hardware.com.br

Suítes de escritório

Sala destinada para questões, dúvidas e dicas envolvendo pacotes ou suítes de escritório destinados ao Windows: instalação, configuração, desempenho, implementações, suítes Office, Open Office, Libre Office etc.

0

Ajuda Excel - números não estão sendo reconhecidos como valores

Prezados, boa tarde, tudo bem?

Estou tentando fazer com que o Excel reconheça os valores da planilha em anexo como números, porém não consigo de jeito nenhum. Já utilizei a função valor, formatei, verifiquei se a coluna está em formato de texto, criei uma dinâmica para somar os valores, mas não vai. Poderiam me ajudar por favor? 

O Excel fica realizando a contagem dos números e nunca a soma.


Obrigado!
0

Selecionar 1 cliente, e Excel/libre office preenche automaticamente outro dado. Misto de autocompletar e lista suspensa

Pessoal, já fiz isso, mas não lembro

Eu tenho uma planilha de clientes:
 
NOME CÓDIGO INTERNO
PEDRO 11111111111
PRISCILA 11111111112
CINTIA 11111111113
MARIA 2 11111111114
MARIA 4 11111111115
PEDRO PAULO 11111111116
VIRGINIA 11111111117
PEDRO 20011112222
PRISCILA 20011112223
CINTIA 20011112224
MARIA 2 20011112225
MARIA 4 20011112226
PEDRO PAULO 20011112227
VIRGINIA 20011112228


E tenho uma planilha Geral, onde vou preencher o que preciso. Exemplo
   
CLIENTE MCI CÓDIGO / BEM VENDA EM 
CINTIA 20011112224 525711700 CLIMATIZADOR ELGIN  2020


Eu quero que, ao selecionar de uma lista suspensa o nome do cliente, automaticamente o excel/libreoffice preencha o código interno.

Eu lembro que era relativamente fácil, mas não lembro como fazer, sinceramente.
0

Me ajudem a resolver problemas de matemática em meu código!

Por que meu código não da o resultado igual o resultado do excel?
a minha função ela retorna um valor diferente do excel e isso eu não entendo.

códigos excel :

= G5 = 2,50%

=(1+G5)^(1/30)-1 = 0,08%  até aqui tudo certo pois coloquei manualmente no código 0,08%

---------------------------------

exemplo dia 35 que é taxa de desconto para quem escolhe pagar em 35 dias.

$G$6 = 0,08% taxa diaria
D14 = 35 dia prazo a pagar selecionado na option do html
=(1+$G$6)^D14-1

Resultado no excel = 2,92%

resultado no código javascript 2,83%

<script>
var taxaDiaria = 0.08 / 100; // Convertendo a taxa diária para decimal
var prazoDias = 35;

// Calculando o resultado
var resultado = Math.pow(1 + taxaDiaria, prazoDias) - 1;

// Exibindo o resultado
result = (resultado * 100 + '%');
alert(result);
</script>




função para calcular desco

function calcularDesconto() {
    // Obter os elementos necessários
    var prazoElement = document.getElementById("prazo&quot;
    var comissaoElement = document.getElementById("comissao&quot;
    var descontoElement = document.getElementById("desconto&quot;

    // Taxa de desconto diária
    var taxaDiaria = 0.08 / 100;
    // Prazo selecionado
    var prazoSelecionado = parseInt(prazoElement.value);
    var mudarTaxa;

    switch (prazoSelecionado) {
        case 35:
            mudarTaxa = 1.0;
            break;
        case 28:
            mudarTaxa = 0.80;
            break;
        case 21:
            mudarTaxa = 0.60;
            break;
        case 14:
            mudarTaxa = 0.40;
            break;
        case 7:
            mudarTaxa = 0.20;
            break;
        default:
            // Caso nenhum dos valores acima corresponda a prazoSelecionado
            // Defina um valor padrão ou lide com isso conforme necessário.
            mudarTaxa = 0;
            break;
    }

// Agora você pode usar a variável taxaDesconto conforme necessário.

    // Taxa de desconto para o prazo selecionado
    var taxaDesconto = Math.pow(1 + taxaDiaria, prazoSelecionado + mudarTaxa) - 1 ;
    taxaDesconto =  parseFloat(taxaDesconto.toFixed(4).replace(',', '.'));
    // Exibir o desconto na página
    var resultado = taxaDesconto * calcularTotal();
    var resultadoFormatado = parseFloat(resultado.toFixed(2).replace(',', '.'));
    descontoElement.textContent = resultadoFormatado.toFixed(2) + '%';
    console.log(taxaDesconto);
   
    // Chame a função calcularMargemTotal aqui, após calcular o desconto
    return resultadoFormatado;

}

// Adicione o evento 'change' ao select de prazo
document.getElementById("prazo&quot.addEventListener("change", calcularDesconto);


código completo :


<!DOCTYPE html>
<html lang="pt-BR">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
   



<style>
    .divisa{
        margin: 20px;
        border: 2px solid black;
        body{ font-family-removed: Arial;}
    }
    table {
        width: 100%;
        border-collapse: collapse;
        margin-top: 20px;
    }

    th {
        background-color: #FFC000;
        color: white;
        font-weight: bold;
        padding: 10px;
        text-align: left;
        cursor: pointer;
    }

    td {
        padding: 10px;
        text-align: left;
        cursor: pointer;
    }

    tbody td {
        background-color: white !important;
    }

    input {
        width: 50px;
    }

    .editavel {
        cursor: pointer;
    }

    #totalQtdeKg,
    #media,
    #total {
        font-weight: bold;
    }

    td.editavel[contenteditable="true"] {
        background-color: #FFC000;
    }

    tfoot {
        font-weight: bold;
    }

    #total-label {
        font-weight: bold;
        text-transform: uppercase;
    }
    th:nth-child(6),
td:nth-child(6) {
    display: none;
}  
div#container{
    overflow-x: auto;
}    

</style>
</head>

<body>
    <h2></h2>
    <div id="container">
        <table id="tabela">
            <thead>
                <tr>
                    <th>Produto</th>
                    <th class="editavel" onclick="habilitarEdicao(this, 'qtde_kg')">Qtde Kg</th>
                    <th>Valor Unitário R$</th>
                    <th>Valor Total R$</th>
                    <th style="width: 20px";>CPV</th>
                    <th>Custo</th>
                    <th class="editavel" onclick="habilitarEdicao(this, 'margem')">Margem Contribuição</th>
                </tr>
            </thead>
            <tbody>
                <!-- MANT BD 12KG -->
                <tr>
                    <td>MANT BD 12KG</td>
                    <td class="editavel" onclick="habilitarEdicao(this, 'qtde_kg')">0</td>
                    <td>R$ 29.50</td>
                    <td>R$ 0.00</td>
                    <td>2,89</td>
                    <td>0</td>
                    <td id="cpv_MANT_BD_12KG"></td>
                    <td class="calculado"></td>
                </tr>
                <!-- MANT 200G -->
                <tr>
                    <td>MANT 200G</td>
                    <td class="editavel" onclick="habilitarEdicao(this, 'qtde_kg')">0</td>
                    <td>R$ 29.56</td>
                    <td>R$ 0.00</td>
                    <td>2,89</td>
                    <td>0</td>
                    <td id="cpv_MANT_200G"></td>
                    <td class="calculado"></td>
                </tr>
                <!-- MANT 500G -->
                <tr>
                    <td>MANT 500G</td>
                    <td class="editavel" onclick="habilitarEdicao(this, 'qtde_kg')">0</td>
                    <td>R$ 28.98</td>
                    <td>R$ 0.00</td>
                    <td>2,89</td>
                    <td>0</td>
                    <td>calcularcpv deverá aparecer aqui</td>
                    <td class="calculado"></td>
                </tr>
                <!-- MANTEIGA BALDE DE 3,5 KG -->
                <tr>
                    <td>MANTEIGA BALDE DE 3,5 KG</td>
                    <td class="editavel" onclick="habilitarEdicao(this, 'qtde_kg')">0</td>
                    <td>R$ 29.35</td>
                    <td>R$ 0.00</td>
                    <td>2,89</td>
                    <td>0</td>
                    <td>calcularcpv deverá aparecer aqui</td>
                    <td class="calculado"></td>
                </tr>
                <!-- QUEIJO COAL. FD/12 3Kg por Und. -->
                <tr>
                    <td>QUEIJO COAL. FD/12 3Kg por Und.</td>
                    <td class="editavel" onclick="habilitarEdicao(this, 'qtde_kg')">0</td>
                    <td>R$ 28.50</td>
                    <td>R$ 0.00</td>
                    <td>21,61</td>
                    <td>0</td>
                    <td>calcularcpv deverá aparecer aqui</td>
                    <td class="calculado"></td>
                </tr>
                <!-- QUEIJO COAL. 500G FD 40und -->
                <tr>
                    <td>QUEIJO COAL. 500G FD 40und</td>
                    <td class="editavel" onclick="habilitarEdicao(this, 'qtde_kg')">0</td>
                    <td>R$ 30.13</td>
                    <td>R$ 0.00</td>
                    <td>21,61</td>
                    <td>0</td>
                    <td>calcularcpv deverá aparecer aqui</td>
                    <td class="calculado"></td>
                </tr>
                <!-- QUEIJO COAL. FD/6 3kg por Und -->
                <tr>
                    <td>QUEIJO COAL. FD/6 3kg por Und</td>
                    <td class="editavel" onclick="habilitarEdicao(this, 'qtde_kg')">0</td>
                    <td>R$ 28.77</td>
                    <td>R$ 0.00</td>
                    <td>21,61</td>
                    <td>0</td>
                    <td>calcularcpv deverá aparecer aqui</td>
                    <td class="calculado"></td>
                </tr>
                <!-- QUEIJO. Minas Frescal -->
                <tr>
                    <td>QUEIJO. Minas Frescal</td>
                    <td class="editavel" onclick="habilitarEdicao(this, 'qtde_kg')">0</td>
                    <td>R$ 31.35</td>
                    <td>R$ 0.00</td>
                    <td>16,14</td>
                    <td>0</td>
                    <td>calcularcpv deverá aparecer aqui</td>
                    <td class="calculado"></td>
                </tr>
                <!-- MUSSARELA CX/6 4Kg -->
                <tr>
                    <td>MUSSARELA CX/6 4Kg</td>
                    <td class="editavel" onclick="habilitarEdicao(this, 'qtde_kg')">0</td>
                    <td>R$ 25.50</td>
                    <td>R$ 0.00</td>
                    <td>23,32</td>
                    <td>0</td>
                    <td>calcularcpv deverá aparecer aqui</td>
                    <td class="calculado"></td>
                </tr>
                <!-- MUSSARELA FD/8 4Kg -->
                <tr>
                    <td>MUSSARELA FD/8 4Kg</td>
                    <td class="editavel" onclick="habilitarEdicao(this, 'qtde_kg')">0</td>
                    <td>R$ 26.60</td>
                    <td>R$ 0.00</td>
                    <td>23,32</td>
                    <td>0</td>
                    <td>calcularcpv deverá aparecer aqui</td>
                    <td class="calculado"></td>
                </tr>
                <!-- MUSSARELA ESTRELA CX 6und. 4Kg -->
                <tr>
                    <td>MUSSARELA ESTRELA CX 6und. 4Kg</td>
                    <td class="editavel" onclick="habilitarEdicao(this, 'qtde_kg')">0</td>
                    <td>R$ 25.10</td>
                    <td>R$ 0.00</td>
                    <td>20.99</td>
                    <td>0</td>
                    <td>calcularcpv deverá aparecer aqui</td>
                    <td class="calculado"></td>
                </tr>
                <!-- QUEIJO PRATO CX/6 4kg -->
                <tr>
                    <td>QUEIJO PRATO CX/6 4kg</td>
                    <td class="editavel" onclick="habilitarEdicao(this, 'qtde_kg')">0</td>
                    <td>R$ 26.00</td>
                    <td>R$ 0.00</td>
                    <td>17,71</td>
                    <td>0</td>
                    <td>calcularcpv deverá aparecer aqui</td>
                    <td class="calculado"></td>
                </tr>
                <!-- REQ. CREMOSO CX 15Und.200Gr -->
                <tr>
                    <td>REQ. CREMOSO CX 15Und.200Gr</td>
                    <td class="editavel" onclick="habilitarEdicao(this, 'qtde_kg')">0</td>
                    <td>R$ 22.15</td>
                    <td>R$ 0.00</td>
                    <td>17,00</td>
                    <td>0</td>
                    <td>calcularcpv deverá aparecer aqui</td>
                    <td class="calculado"></td>
                </tr>
                <!-- Adicione mais produtos conforme necessário -->
            </tbody>
            <tfoot>
                <tr>
                    <td id="total-label">TOTAL</td>
                    <td id="totalQtdeKg">0.00</td>
                    <td id="media">0.00</td>
                    <td id="total">R$ 0.00</td>
                    <td id="cpvx">0</td>
                    <td id="custo-total">00.0</td>
                    <td id="margem-total"></td>
                    <td class="calculado"></td>
                </tr>
            </tfoot>
        </table>
    </div>
    <div class="divisa"></div>
    <label for="uf">Selecione o Estado:</label>
    <select id="uf" onchange="calcularFrete()">
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
    </select>

    <p>Distância (km): <span id="distancia">0</span></p>
    <p>Valor Final: R$ <span id="valorFinal">0.00</span></p>
    <div class="divisa"></div>

    <label for="prazo">Selecione o prazo médio:</label>
    <select id="prazo" name="prazo">
       
       
       
       
       
       
    </select>

    <br>

    <label for="comissao">Comissão (%):</label>
    <input type="number" id="comissao" name="comissao" min="0" step="0.1" value="1.5">
    <p>Desconto: R$ <span id="desconto">0.00</span></p>
   
   
   
    <script >
        //Adiciona o evento 'input' às células editáveis
var editaveis = document.querySelectorAll('.editavel');
var editingCell = null;

editaveis.forEach(function (celula) {
    celula.addEventListener('input', function () {
        calcularValorTotal(celula.parentElement);
        calcularTotalQtdeKg();
        //calcularMedia();
        calcularTotal();
        calcularCustoTotal();
        //calcularCPV();
        exibirCpv();
        calcularDesconto();
        calcularMargemTotal();
    });

    celula.addEventListener('keydown', function (e) {
        if (e.key === 'Enter') {
            desabilitarEdicao();
        }
    });
});

function habilitarEdicao(celula, classe) {
    if (editingCell) {
        desabilitarEdicao();
    }

    celula.setAttribute('contenteditable', true);
    celula.focus();
    editingCell = celula;
}

function desabilitarEdicao() {
    if (editingCell) {
        editingCell.removeAttribute('contenteditable');
        editingCell = null;
    }
}

function formatarDinheiro(valor) {
    return valor.toLocaleString('pt-BR', { minimumFractionDigits: 2, maximumFractionDigits: 2 });
}

/*funções aqui */

function calcularTotalQtdeKg() {
    var linhas = document.querySelectorAll('#tabela tbody tr');

    var totalQtdeKg = 0;

    linhas.forEach(function (linha) {
        totalQtdeKg += parseFloat(linha.querySelector('td:nth-child(2)').textContent);
    });

    document.getElementById('totalQtdeKg').textContent = totalQtdeKg.toFixed(2);

    return totalQtdeKg;
}


function calcularTotal() {
    var linhas = document.querySelectorAll('#tabela tbody tr');

    var total = 0;

    linhas.forEach(function (linha) {
        var valorTotal = parseFloat(linha.querySelector('td:nth-child(4)').textContent.replace('R$ ', '').replace(',', '.'));
        total += valorTotal;
    });

    document.getElementById('total').textContent = formatarDinheiro(total);

    return total;
}

function calcularCustoTotal() {
var linhas = document.querySelectorAll('#tabela tbody tr');
var custoTotal = 0;

linhas.forEach(function (linha) {
    var custo = parseFloat(linha.querySelector('td:nth-child(6)').textContent.replace('R$ ', '').replace(',', '.'));
    custoTotal += custo;
});

document.getElementById('custo-total').textContent = formatarDinheiro(custoTotal);

return custoTotal;

}

function calcularMedia() {
    var linhas = document.querySelectorAll('#tabela tbody tr');

    var total = 0;
    var totalQtdeKg = 0;

    linhas.forEach(function (linha) {
        var valorTotal = parseFloat(linha.querySelector('td:nth-child(4)').textContent.replace('R$ ', '').replace(',', '.'));
        var qtdeKg = parseFloat(linha.querySelector('td:nth-child(2)').textContent);
        total += valorTotal;
        totalQtdeKg += qtdeKg;
    });

    var media = totalQtdeKg !== 0 ? total / totalQtdeKg : 0;

    document.getElementById('media').textContent = formatarDinheiro(media);
}

function calcularValorTotal(linha) {
    var qtdeKg = parseFloat(linha.querySelector('.editavel[onclick="habilitarEdicao(this, \'qtde_kg\')"]').textContent);


    var valorUnitario = parseFloat(linha.querySelector('td:nth-child(3)').textContent.replace('R$ ', '').replace(',', '.'));

    var cpv = parseFloat(linha.querySelector('td:nth-child(5)').textContent.replace(',', '.')); // Obtém o CPV

    var valorTotal = qtdeKg * valorUnitario;
   
    var custo = cpv * qtdeKg; // Calcula o custo

    linha.querySelector('td:nth-child(4)').textContent = valorTotal.toFixed(2);
    linha.querySelector('td:nth-child(6)').textContent = custo.toFixed(2); // Exibe o custo na tabela

    // Calcular a margem de contribuição (em porcentagem)
    var margem = (valorUnitario !== 0 ? ((valorUnitario - cpv) / valorUnitario) * 100 : 0);

    // Exibir a margem de contribuição na tabela
    linha.querySelector('td:nth-child(7)').textContent = margem.toFixed(1) + '%';


     //Calcular a média (Valor Total R$/Qtde Kg)
    calcularMedia();
    return valorTotal;
}


function exibirCpv() {
    var linhas = document.querySelectorAll('#tabela tbody tr');

    linhas.forEach(function (linha) {
        var qtdeKg = parseFloat(linha.querySelector('td:nth-child(2)').textContent);
        var custo = parseFloat(linha.querySelector('td:nth-child(6)').textContent.replace('R$ ', '').replace(',', '.'));
       
        // Evita a divisão por zero
        var cpvx = calcularCustoTotal() !== 0 ? calcularCustoTotal() / calcularTotalQtdeKg() : 0;
        //var cpv =  custo / qtdeKg;

        document.getElementById('cpvx').textContent = formatarDinheiro(cpvx);
    });
}

function calcularCPV() {
    var linhas = document.querySelectorAll('#tabela tbody tr');

    linhas.forEach(function (linha) {
        var vunitarioText = linha.querySelector('td:nth-child(3)').textContent;
        var vunitario = parseFloat(vunitarioText.replace('R$ ', '').replace(',', '.'));

        var cpv = parseFloat(linha.querySelector('td:nth-child(5)').textContent.replace('R$ ', '').replace(',', '.'));

        var margem = (vunitario !== 0 ? ((vunitario - cpv) / vunitario) * 100 : 0);
        // Calcula o CPV em porcentagem

        // Adiciona o resultado ao elemento correspondente
        linha.querySelector('td:nth-child(7)').textContent = margem.toFixed(1) + '%';
        document.getElementById('cpvx').textContent = formatarDinheiro(margem);
    });
}

// Chama a função de CPV ao carregar a página
calcularCPV();


/*FRETES E MARGEM*/
 

/*CALCULAR FRETE*/

function calcularFrete() {
    var ufSelect = document.getElementById("uf&quot;
    var distanciaElement = document.getElementById("distancia&quot;
    var valorFinalElement = document.getElementById("valorFinal&quot;

    var uf = ufSelect.value;

    // Tabela de frete (distância em km e valor final em R$)
    var tabelaFrete = {
        'AC': { distancia: 1520, valorFinal: 3040.00 },
        'AL': { distancia: 2006, valorFinal: 4011.00 },
        'AP': { distancia: 1367, valorFinal: 2734.00 },
        'AM': { distancia: 1493, valorFinal: 2986.00 },
        'BA_MET': { distancia: 1080, valorFinal: 2160.00 },
        'BA_EXT': { distancia: 2340, valorFinal: 4680.00 },
        'CE': { distancia: 1285, valorFinal: 2569.00 },
        'DF': { distancia: 1053, valorFinal: 2105.00 },
        'ES': { distancia: 1165, valorFinal: 2329.00 },
        'GO': { distancia: 1696, valorFinal: 3392.00 },
        'MA': { distancia: 1479, valorFinal: 2958.00 },
        'MT': { distancia: 1263, valorFinal: 2526.00 },
        'MS': { distancia: 1722, valorFinal: 3443.00 },
        'MG': { distancia: 1020, valorFinal: 2039.00 },
        'PA': { distancia: 1350, valorFinal: 2700.00 },
        'PB': { distancia: 1849, valorFinal: 3698.00 },
        'PR': { distancia: 2194, valorFinal: 4388.00 },
        'PE': { distancia: 1015, valorFinal: 2029.00 },
        'PI_CENT': { distancia: 2100, valorFinal: 4200.00 },
        'PI_EXT_N': { distancia: 2800, valorFinal: 5600.00 },
        'RJ': { distancia: 1415, valorFinal: 2829.00 },
        'RN': { distancia: 1140, valorFinal: 2280.00 },
        'RS': { distancia: 2050, valorFinal: 4100.00 },
        'RO': { distancia: 1430, valorFinal: 2860.00 },
        'RR': { distancia: 1740, valorFinal: 3480.00 },
        'SC': { distancia: 2224, valorFinal: 4448.00 },
        'SP': { distancia: 1354, valorFinal: 2707.00 },
        'SE': { distancia: 0, valorFinal: 0.00 }, // Valor não especificado
        'TO': { distancia: 1202, valorFinal: 2404.00 },
    };

    // Verifica se a UF selecionada existe na tabela de frete
    if (uf in tabelaFrete) {
        var distancia = tabelaFrete[uf].distancia;
        var valorFinal = tabelaFrete[uf].valorFinal;

        // Atualiza os elementos no HTML com os resultados
        distanciaElement.textContent = distancia;
        valorFinalElement.textContent = valorFinal.toFixed(2);
    } else {
        // UF não encontrada na tabela de frete
        alert('UF não encontrada na tabela de frete.');
    }
}

/*calcular margem*/

function calcularMargemTotal() {
    // Obter os valores necessários
    var resultado = calcularTotal();
    var custoTotal = calcularCustoTotal();
    var frete = calcularFrete();
    var comissaoPercentual = 1.5; // Valor fixo de 1.5%, pode ser ajustado conforme necessário
    var desconto = calcularDesconto(); // Valor fixo de desconto, pode ser ajustado conforme necessário
    // Calcular o valor do frete (já obtido pela função calcularFrete)
    var valorFrete = parseFloat(document.getElementById("valorFinal&quot.textContent.replace(',', '.'));

    // Calcular o valor da comissão
    var comissaoValor = (resultado * comissaoPercentual) / 100;
    // Calcular a margem total
    var margemTotal = (resultado - custoTotal - valorFrete - comissaoValor - desconto) / resultado * 100;

    // Aplicar cores com base nas condições
    if (margemTotal > 15.05) {
        document.getElementById('margem-total').style.background = 'blue';
        } else if (margemTotal < 10.05) {
            document.getElementById('margem-total').style.background = 'red';
        } else {
            document.getElementById('margem-total').style.background = 'yellow';
        }


    // Exibir os resultados na página
    document.getElementById('margem-total').textContent = margemTotal.toFixed(1) + '%';
}

// Função para calcular o desconto
// Função para calcular o desconto
function calcularDesconto() {
    // Obter os elementos necessários
    var prazoElement = document.getElementById("prazo&quot;
    var comissaoElement = document.getElementById("comissao&quot;
    var descontoElement = document.getElementById("desconto&quot;

    // Taxa de desconto diária
    var taxaDiaria = 0.08 / 100;
    // Prazo selecionado
    var prazoSelecionado = parseInt(prazoElement.value);
    var mudarTaxa;

    switch (prazoSelecionado) {
        case 35:
            mudarTaxa = 1.0;
            break;
        case 28:
            mudarTaxa = 0.80;
            break;
        case 21:
            mudarTaxa = 0.60;
            break;
        case 14:
            mudarTaxa = 0.40;
            break;
        case 7:
            mudarTaxa = 0.20;
            break;
        default:
            // Caso nenhum dos valores acima corresponda a prazoSelecionado
            // Defina um valor padrão ou lide com isso conforme necessário.
            mudarTaxa = 0;
            break;
    }

// Agora você pode usar a variável taxaDesconto conforme necessário.

    // Taxa de desconto para o prazo selecionado
    var taxaDesconto = Math.pow(1 + taxaDiaria, prazoSelecionado + mudarTaxa) - 1 ;
    taxaDesconto =  parseFloat(taxaDesconto.toFixed(4).replace(',', '.'));
    // Exibir o desconto na página
    var resultado = taxaDesconto * calcularTotal();
    var resultadoFormatado = parseFloat(resultado.toFixed(2).replace(',', '.'));
    descontoElement.textContent = resultadoFormatado.toFixed(2) + '%';
    console.log(taxaDesconto);
   
    // Chame a função calcularMargemTotal aqui, após calcular o desconto
    return resultadoFormatado;

}

// Adicione o evento 'change' ao select de prazo
document.getElementById("prazo&quot.addEventListener("change", calcularDesconto);

    </script>
</body>
</html>
0

Como converter Excel com muitas linhas para SQL?

Preciso de ajuda, tenho algumas planilhas pesadas, cerca de 100.000 kb cada por conta do volume de linhas e todas estão no mesmo padrão. Preciso importar para meu site, quando tentei vi que havia uma limitação e fui tentando dividir manualmente essas planilhas. Encontrei que o PHPMYADMIN suporta de 5 a 10 mil linhas... mas o total de linhas de todos os arquivos é de 20 milhoes, portanto eu ficaria uma eternidade subindo no formato de planilha diretamente pelo site...
Se eu conseguisse converter tudo para mySql conseguiria importar no site facilmente... Alguem sabe me dizer se isso é possivel?
0

Como automatizar trabalho no Excel?

Boa tarde, preciso realizar um trabalho com planilhas em excel e sei que posso automatizá-la, mas, não sei como realizar essa automatização de maneira correta.
Meu trabalho resume-se em duplicar dados em linhas em uma tabela, vou mostrar imagem para ilustrar:
a48ab6ec-1e5d-49ab-9125-9a11612035b9?upload=true&fud_access=wJJIheezUklbAN2ppeDns8cDNpYs3nCYjgitr%2BfFBh2dqlqMuW7np3F6Utp%2FKMltnRRYFtVjOMO5tpbpW9UyRAwvLeec5emAPixgq9ta07Dgnp2aq5eJbnfd%2FU3qhn54MwV4aBiDQevCOwrrHiTwkWP6zuOf7l8JSprWLNZvlhjCFhoEQOrl9aCij9v4%2FSkkQS3Zp8qpCCz%2BJDv8tGfBDrBzp3ZPH3oMQewCVM6V5%2BX3cGZPdw%2F%2FlnAGx2100EKhtP6wHAQjGR0Ro9d2vqs43RH7uQ%2BKsqaL%2FB9ZkR17xwN7rI5%2BHyhhV3zqWrFHJNRpK2J3XcijEg%2B0jBpfi1U7pUmYR5lypKcNlevTThj80R4D38riDobZ1icHnF1NQOzS7KhC2Vnk2SyXTajj%2FpQ9VgFOAW1%2BAQVXzFlh5QMmSlk%3DNoutras palavras os dados da linha 2935 devem ser replicados na linha 2936. Assim como, os dados da linha 2937 devem ser copiados/replicados na linha 2938. Isso para todo o documento.

Como posso aperfeiçoar essa atividade sem ter de copiar e colar os dados de uma linha para outra.

**Na imagem acima estou percorrendo a tabela de baixo para cima.

Grato pela atenção
Bruno de Barros
0

Excel

Boa noite a todos!

Gostaria de uma ajuda com uma planilha do Excel, tenho uma aba principal com o nome Clientes e outras com cada mes do ano, na aba clientes coloco todas as vendas e cadastro dos clientes, o que eu queria era ao colocar o mes de janeiro na aba clientes que fosse para a aba Janeiro, em clientes eu coloco o nome e ja da certo com a formula ='Clientes'!E8 e assim por diante, so que cria que fosse automatico ao colocar o mes para a aba do proprio mes, alguem poderia me ajudar?
0

Marco para PDF.

Fala pessoal.
Estou precisando de uma ajuda aqui, o código não funcionou e preciso da mesma solução que o amigo: " salvar em qualquer computador", sem precisar mexer no código.
Além de salvar em pdf, envio por e-mail
Segue código que estou usando:

Dim OutApp As Object, OutMail As Object
    Dim Nome As String
    Dim assunto As String
    Dim email_forn As String
    Dim caminhopdf As String
       
    email_forn = txtobservacao
    Nome = Sheets("gerar_voucher&quot.Range("AA1&quot
    caminhopdf = VBA.Environ("userprofile&quot & "\Desktop"
    assunto = "Senha de agendamento Cremer - CD Indaial:  " & Nome
    ThisWorkbook.Sheets(Array("gerar_voucher&quot).Select

'Ajuste da largura das paginas:
Application.PrintCommunication = False
With ActiveSheet.PageSetup
.Orientation = Excel.xlPortrait '(retrato)
.Zoom = False
.FitToPagesWide = 1
End With
Application.PrintCommunication = True

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
caminhopdf & "\" & Nome & ".pdf" _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, From:=1, To:=1, OpenAfterPublish:=True
   
    Set OutApp = CreateObject("Outlook.Application&quot
    Set OutMail = OutApp.CreateItem(0)
0

Identificar item de acordo com parâmetro

Olá amigos!

Estou com dificuldade numa fórmula pra identificar itens de acordo com parâmetro estabelecido. Na planilha em anexo, a coluna C diz respeito a área que um material codificado está inserido na guia ESTOQUE-LIVRE coluna A (deposito).
Tentei usar PROCV porém se um mesmo material estiver em dois depósitos, a fórmula puxa apenas o primeiro item e o restante é desconsiderado. Gostaria poder diferenciar itens exclusivos para cada depósito e caso, no caso em específico CD. Tentei usar SE junto com PROCV, mas não consegui ter um resultado.

Se alguém puder me ajudar, fico grato.
0

Erro ao abrir arquivo .xlsx com GNU-Octave

Gente, vou upar o arquivo que quero abrir em octave e gostaria de saber soluções para o meu problema, vou tentar dar todos os tipos de informações possível que consegui até agora:

1- Objetivo: Ler o arquivo .xlsx e manipular os dados em um programa

2- Problema: Não abre de jeito nenhum por estar com nome zoado "CONSUMO MENSAL DE ENERGIA ELÉTRICA POR CLASSE.xlsx" com espaços, maiúsculos e acento...

3- Mudando o nome do arquivo para um formato mais legível: "planilha.xlsx" abre TRANQUILAMENTE com a biblioteca io e com a linha "dados = xlsread('planilha.xlsx')";

4- Já tentei associar o nome do arquivo à uma variável e abrir do mesmo modo com "dados = xlsread(nome_arquivo) mas não vai

5- Usando o comando 'ls' obtive que o nome do arquivo era lido como 'CONSUMO MENSAL DE ENERGIA EL'$'\303\211''TRICA POR CLASSE.xlsx'

6- Alterando para utf-8 descobri que usando ls novamente o octave conseguia ler o 'É' normalmente, mas ainda não abria...

7- Já me certifiquei se a biblioteca io estava atualizada

8- Já me certifiquei que o arquivo está no diretório do script

9- NÃO POSSO ALTERAR O NOME DO ARQUIVO. Utilizando rename consegui abrir o arquivo e dei andamento no decorrer do projeto, porém quando fui até a professora ela disse que não queria que eu fizesse isso mesmo eu voltando o nome do arquivo no final do código novamente (e fez questão de não me dizer como fazer isso) estava empacado nisso a 3 dias e encontrei o rename como solução e acabei voltando a estaca zero, gostaria de saber como resolver o meu problema.

Vou mandar o arquivo da planilha... meio que ela é famosa, visto que são os dados de gasto energético do Brasil todo
0

Duvidas de rateio em Excel

Boa tarde, preciso de uma ajuda em como solucionar meu problema no excel.

Trabalho com equipamentos em clientes, e esses equipamentos possuem 5 tamanhos com metas diferentes e cada cliente pode ter mais de um equipamento.

Tenho o total de compra do cliente e preciso saber se cada equipamento bateu a meta.

Exemplo: cliente possui 3 equipamentos, 1 meta 25, 1 meta 50 e 1 meta 75. Comprou 125 cx, preciso que o excel me fale que ele bateu a meta do 75 e do 50 e o outro tem 0 até o momento. 

Porém não consegui fazer isso, atualmente pego o total de divido por 3 o que daria 41 de realizado para cada equipamento falando que ele bateu apenas um deles, sendo que bateu a meta em mais. 

Como posso resolver isso no excel?
0

Excel: Puxar dados de outra aba com fórmula matricial

Boa tarde a todos!
 
Estou tentando no excel uma fórmula para puxar dados de outra aba para retornar na aba atual. Preciso de uma fórmula matricial única que retorne os resultados até o final.
 
Porém, o comando INDIRETO não está entrosando bem com essa fórmula matricial, e não consigo uma solução para isso.
 
Alguém saberia como resolver?
 
Estou anexando uma planilha modelo para simplificar, desde já agradeço a quem puder ajudar!!
0

Discriminar itens de acordo com ID específico

Olá,

Tudo bem galera?!

Estou montando uma planilha de acordo com uma base de dados em que os itens são separados por depósitos específicos com suas respectivas quantidades. Pode ocorrer que um mesmo item esteja repetido em mais de um deposito.

O desafio é criar uma visão segregada de cada item por cada deposito. Também existem um mesmo material alocado no mesmo deposito com quantidades diferentes, nesse caso o painel traria a soma se os campos anteriores fossem iguais.

Na planilha mostro um exemplo de como gostaria e na guia "base", consta a base de dados do exemplo.

Caso alguém puder me ajudar, ficarei grato.
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal