calcolo accise enel maggior tutela excel openoffice in vba su modulo1
Rem Attribute VBA_ModuleType=VBAModule
Option VBASupport 1
Function amg(var As Double) As String
amg = "anni " & Int(var)
mesi = Int((var - Int(var)) * 12)
amg = amg & "mesi " & mesi
'giorni =
'giorni = amg & "giorni " & giorni
End Function
Function accisekwh(kwh As Double, gg As Integer) As Double
kwhpq = kwh / gg ' kwh consumati al giorno
esenti = 150 ' numero kwh esenti da accise
s1 = 220 ' soglia oltre il quale l'esenzione viene tolta progressivamente
s2 = 370 ' limite oltre il quale non esiste esenzione
pqg0 = esenti * 12 / 365
pqg1 = s1 * 12 / 365
pqg2 = s2 * 12 / 365
nonesenti = 0
accisekwh = 0
If kwhpq > pqg2 Then ' superati i 370 mese non esiste esenzione
accisekwh = kwhpq
ElseIf kwhpq > pqg1 Then 'superati i 220
accisekwh = kwhpq - pqg1
nonesenti = accisekwh
kwhpq = pqg1
End If
If kwhpq <= pqg1 Then 'caso che sono minori o uguali a 220 kwh mensili
If kwhpq < pqg0 Then
accisekwh = 0
Else
accisekwh = accisekwh + kwhpq - pqg0
End If
End If
accisekwh = Int(((accisekwh + nonesenti) * gg) + 0.5)
End Function
' ho trovato rispetto al calcolo enel da 1 a 2 centesimi di differenza quindi non è ancora perfetta.
'esempio di utilizzo
'nel calcolo bolletta nel periodo ipotetico dal 4/10/2013 al 3/12/2013 enel viene suddiviso in
' a) 4/10 a 31/10 = 28 giorni
' b) 1/11 a 30/11 = 30 giorni
' c) 1/12 a 03/12 = 3 giorni in questo periodo di 3 gg sono stati consumati 32kWh
nella cella di excel dove calcolo l'accise del rigo c) inserisco
=0,0270*accisekwh(32;3) è il valore che devo pagare in euro di accise per quel periodo
Rem Attribute VBA_ModuleType=VBAModule
Option VBASupport 1
Function amg(var As Double) As String
amg = "anni " & Int(var)
mesi = Int((var - Int(var)) * 12)
amg = amg & "mesi " & mesi
'giorni =
'giorni = amg & "giorni " & giorni
End Function
Function accisekwh(kwh As Double, gg As Integer) As Double
kwhpq = kwh / gg ' kwh consumati al giorno
esenti = 150 ' numero kwh esenti da accise
s1 = 220 ' soglia oltre il quale l'esenzione viene tolta progressivamente
s2 = 370 ' limite oltre il quale non esiste esenzione
pqg0 = esenti * 12 / 365
pqg1 = s1 * 12 / 365
pqg2 = s2 * 12 / 365
nonesenti = 0
accisekwh = 0
If kwhpq > pqg2 Then ' superati i 370 mese non esiste esenzione
accisekwh = kwhpq
ElseIf kwhpq > pqg1 Then 'superati i 220
accisekwh = kwhpq - pqg1
nonesenti = accisekwh
kwhpq = pqg1
End If
If kwhpq <= pqg1 Then 'caso che sono minori o uguali a 220 kwh mensili
If kwhpq < pqg0 Then
accisekwh = 0
Else
accisekwh = accisekwh + kwhpq - pqg0
End If
End If
accisekwh = Int(((accisekwh + nonesenti) * gg) + 0.5)
End Function
' ho trovato rispetto al calcolo enel da 1 a 2 centesimi di differenza quindi non è ancora perfetta.
'esempio di utilizzo
'nel calcolo bolletta nel periodo ipotetico dal 4/10/2013 al 3/12/2013 enel viene suddiviso in
' a) 4/10 a 31/10 = 28 giorni
' b) 1/11 a 30/11 = 30 giorni
' c) 1/12 a 03/12 = 3 giorni in questo periodo di 3 gg sono stati consumati 32kWh
nella cella di excel dove calcolo l'accise del rigo c) inserisco
=0,0270*accisekwh(32
Commenta