Stránka 1 z 1

Excel-Výpočet proudu nebo výkomu podle zadaných hodnot

Napsal: 27 kvě 2012 11:30
od Jan Pašek
A snad už dnes naposled poprosil bych o další pomoc s makrem bo výpočet pomocí vzorců přímo v tabulce vytváří kruhový odkaz.
Do buňky K5 je buď ručně nebo pomocí funkce Data-Ověření-Seznam vkládána hodnota napětí tedy celé číslo
Do buňky L5 je ručně vkládána hodnota proudu v Ampérech Tedy číslo, které může obsahovat až 4 desetinná místa
Do buňky M5 je ručně vkládána hodnota příkonu ve Wattech tedy celé číslo.

Co má makro umět:
Automaticky provést výpočet a zapsat výsledek do příslušné buňky pokud hodnota vloženého napětí nepřesahuje 240 V a pokud jsou vloženy 2 ze 3 hodnot přičemž napětí musí být vloženo vždy. (pro výpočty ve 3 fázové soustavě (400V) platí jiné vzorce a pro moje účely je toto napětí vyjímečné)
Vloženo napětí a proud = výpočet a zápis příkonu = Pn[W] = Un[V] * In[V] (počítáme na celé zaokrouhlené číslo)
Vloženo napětí a příkon = výpočet a zápis proudu = In[A] = Pn[W] / Un[V] (počítáme na 4 desetiná místa)

Re: Excel-Výpočet proudu nebo výkomu podle zadaných hodnot

Napsal: 27 kvě 2012 14:01
od Azuzula
Máte možnost, vytvořit pro výpočty proudu resp. příkonu dva oddělené vzorce, takže např.
V jednom řádku zadáte napětí a příkon a ono to v třetí buňce vypočítá proud
a na dalším řádku obdobně s napětím a proudem a do třetí buňky výpočet příkonu.

Nebo napsat makro podle vašich zadaných kritérií už není tak složité, stačí zapsat do podmínek co a kde má být zapsáno a kam napsat výsledek. V podstatě máte makro rozepsáno v zadání. Stačí to jen přepsat do VBA.

Re: Excel-Výpočet proudu nebo výkomu podle zadaných hodnot

Napsal: 27 kvě 2012 19:45
od Jan Pašek
Ach pokusím se napsat makro jen času se nedostává. Téma nechávám zatím otevřené pro případné řešení chyb.

Re: Excel-Výpočet proudu nebo výkomu podle zadaných hodnot

Napsal: 04 črc 2012 10:10
od Jan Pašek
takhle jsem to stvořil:

Kód: Vybrat vše

 'Následující sekvence Maže proud a výkon pokud bylo zadáno více jak 240V a jmenované buňky nejsou prázdné
 If Range("R2") And Range("L5,M5") = "" And Range("K5") > 240 Then
    Range("R2") = "Nepravda"
 ElseIf Range("R2") And Range("K5,L5,M5") <> "" And Range("K5") > 240 Then
    Range("L5,M5").ClearContents
    Range("R2") = "Nepravda"
 ElseIf Range("R2") = "Nepravda" And Range("K5") < 241 And Range("K5") <> "" Then
    Range("R2") = "Pravda"
 ElseIf Range("R2") = "Nepravda" And Range("K5,L5,M5") = "" Then
    Range("R2") = "Pravda"
 End If
 
 'Následující sekvence Provádí výpočet proudu nebo příkonu pokud je napětí menší než 241V
 If Range("M5") <> "" And Range("K5") < 241 And Range("K5") <> "" And Range("L5") = "" Then
    Range("L5").Value = Range("M5") / Range("K5")
 ElseIf Range("L5") <> "" And Range("K5") < 241 And Range("K5") <> "" And Range("M5") = "" Then
    Range("M5").Value = Range("K5") * Range("L5")
 End If

Re: Excel-Výpočet proudu nebo výkomu podle zadaných hodnot

Napsal: 07 črc 2012 11:35
od Azuzula
Zápis vypadá dobře a složité to určitě nebylo :)
Jen bych upravila v prvních dvou podmínkách to samotný "Range("R2")" tak jak je je výsledek TRUE. Buď aby se to testovalo na přítomnost něčeho a nebo to smazat protože je podle mě takhle bez funkce. Nejspíš jde o překlep?

Re: Excel-Výpočet proudu nebo výkomu podle zadaných hodnot

Napsal: 07 črc 2012 15:12
od Jan Pašek
Buňka R2 nabývá hodnot Pravda, nepravda pro činnost Smazáno, Nesmazáno je tedy funkcí

Re: Excel-Výpočet proudu nebo výkomu podle zadaných hodnot

Napsal: 07 črc 2012 15:59
od Azuzula
Každopádně když je tam napsáno jen "Range("R2")" tak je výsledek pokaždé TRUE protože to asi testuje buňku na přítomnost, tím pádem tam chybí třeba Range("R2") = "text co má být v buňce" nebo Range("R2") <> "text co má být v buňce". Jsou to řádky v kódu 2 a 4 zbytek je OK.

Re: Excel-Výpočet proudu nebo výkomu podle zadaných hodnot

Napsal: 07 črc 2012 20:31
od Jan Pašek
Pokud jsem dobře pochopil to co tvrdíš tak bohužel opak je pravdou dal sem si tu práci a napsal soubor k otestování. Pokud buňka nabývá logickou hodnotu je možné se v podmínce na ni odkazovat přímo a logická hodnota v této buňce ovlivňuje splnění podmínky v makru.

Re: Excel-Výpočet proudu nebo výkomu podle zadaných hodnot

Napsal: 07 črc 2012 21:00
od El Diablo
To je nějaké složité, já to řešil jinak:
viz dole http://www.eldiablo.webz.cz/pages/elektronika.html

Re: Excel-Výpočet proudu nebo výkomu podle zadaných hodnot

Napsal: 07 črc 2012 21:52
od Jan Pašek
To El Diablo Přečti si úvodní zadání ... uvědom si že podle toho které hodnoty jsou vloženy se vybírá výpočet a dále pokud je vložena hodnota nad 241V výpočty nesmí být provedeny.
Pokud se v tom chceš hlouběji šťourat zpracovávám tabulku pro vedení revizí El.spotřebičů během užívání dle ČSN 33 1600 ed.2 pomocí PC. a jsem ochoten ti rozpracovaný soubor někam upnout na PC help se to nevejde. Konec konců víc hlav víc ví a třeba mi někam postrčíš.

Re: Excel-Výpočet proudu nebo výkomu podle zadaných hodnot

Napsal: 07 črc 2012 22:27
od Azuzula
Ano, dobře, pokud je v buňce logická hodnota pravda/nepravda (true/false) tak to funguje. I tak bych si to vždy pojistila kompletní podmínkou čímž se vyvaruji případných chyb v běhu makra.

Hlavně když je v buňce něco jiného než logická hodnota (pravda/nepravda nebo true/false) tzn. text = makro hodí chybu "Type mismatch" a pokud tam je číslo 0 = NEPRAVDA a jakékoliv číslo větší než 0 tak je vždy PRAVDA.

Taky jsem takové výpočty řešila pomocí vzorců jako El Diablo, nezáleželo mi na tom jestli tam je pár buněk navíc nebo ne a bylo to jednodušší i když to vyžadovalo víc místa.

Re: Excel-Výpočet proudu nebo výkomu podle zadaných hodnot

Napsal: 07 črc 2012 22:34
od El Diablo
Jan Pašek píše:To El Diablo Přečti si úvodní zadání ... uvědom si že podle toho které hodnoty jsou vloženy se vybírá výpočet a dále pokud je vložena hodnota nad 241V výpočty nesmí být provedeny.
Pokud se v tom chceš hlouběji šťourat zpracovávám tabulku pro vedení revizí El.spotřebičů během užívání dle ČSN 33 1600 ed.2 pomocí PC. a jsem ochoten ti rozpracovaný soubor někam upnout na PC help se to nevejde. Konec konců víc hlav víc ví a třeba mi někam postrčíš.


Bohužel se mi v tom šťourat nechce, nemám na to čas ani znalosti... :wink: