Calcolo del Bollo auto (UDF con IE)

Documenti analoghi
Utilizzare le RegExp e IE per esplorare il Web

Anagrammi e combinazioni con ripetizione

Convertire numeri da lettere a cifre (UDF)

UsedRange - eccezioni e alternative

Codici a barre - Seconda parte (EAN 8 ed EAN 13)

Convertire un numero da cifre a lettere (UDF)

Rimuovere la password dalle protezioni di foglio e cartella in Excel

Elenchi univoci funzioni di ordinamento e verifica chiave

Convertire un numero da cifre a lettere (UDF)

TASSE AUTOMOBILISTICHE quando, quanto e dove pagare

TASSE AUTOMOBILISTICHE 2007

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

REPUBBLICA DI SAN MARINO

Pagamenti Pagamenti Autovetture e Autoveicoli uso promiscuo - annuali frazionati (*) autocarri art. 1, c. 240, l.n. 296/2006 Kw Cv Kw Cv

Excel & VBA. Excel e Visual Basic for Application

28/02/2014 Copyright V. Moriggia

TASSE AUTOMOBILISTICHE IN GENERALE

Rimuovere la password dalle protezioni di foglio e cartella in Excel

Guida al bollo auto. Scritto da Cristian Giancotti Sabato 30 Aprile :57

STIMA DEI BENI INERENTI AL PROCEDIMENTO n. 9020/2016 AFFIDATO DAL COMUNE DI BOLOGNA

MANUALE OPERATIVO PROTOCOLLO DI COMUNICAZIONE TERMOMETRI SITEL CONTROL SERIE A BASSA TEMPERATURA

A quale categoria Euro appartiene il mio veicolo

Listino aggiornato al 01/01/2019

Programmazione con il linguaggio LibreOffice Basic

VERIFONE PROTOCOLLO SCAMBIO IMPORTO

VBA Principali Comandi

Listino aggiornato al 01/01/2016

5 Array Cicli iterativi Contenuto di cella 28/02/2014 Copyright V. Moriggia 1

Aumenta il compenso dei tabaccai che riscuotono il bollo auto

LIBRO MATRICOLA R.C. VEICOLI e RISCHI DIVERSI

INFORMAZIONI GENERALI SULLA TASSA AUTOMOBILISTICA

Caratteristiche generali del linguaggio Visual Basic

COMUNE DI PARMA Servizio Mobilità e Ambiente. Classificazione Euro dei veicoli in base alle direttive europee

SCHEDA D OFFERTA LOTTO N. 1. Il sottoscritto Sig... in qualità di. della Ditta con sede in..via/piazza... N... OFFRE

Mi piacerebbe condividere con voi una funzione che ho realizzato per rispondere ad una richiesta posta nella Sezione Visual Basic 6 su MasterDrive.it.

VISUAL BASIC FOR APPLICATION

Excel & VBA. Excel e Visual Basic for Application

LE NUOVE PATENTI DI GUIDA (dal 19 gennaio 2013)

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore

VBScript. VBScript. Visual Basic Scripting Edition. Linguaggio di script per browser e server Microsoft Deriva da Visual Basic, ma è interpretato

LOTTO 1 : Autovettura a gasolio Volkswagen Passat Highline. 4motion, cilindrata c.c., potenza 96 kw. Targa: BM937PV telaio WVWZZZ3BZ1E079871

TITULUS WEB SERVICES

Nuova disciplina in materia di patenti di guida

Vendesi Lancia Beta Montecarlo

Tabella Riepilogativa a partire dal 19 gennaio 2013

Transcript:

Calcolo del Bollo auto (UDF con IE) Inviato da Roberto mercoledì 11 marzo 2009 Il Blog di Excelvba Due funzioni (anche UDF) per il calcolo del bollo auto. Utilizzano entrambe un collegamento al sito della agenzia delle entrate. Nella prima viene passata la targa, nella seconda i parametri per il calcolo. saluti r 'di Roberto Mensa Function Calcolo_Bollo_Ag_Entrate( _ ByVal starga As String, _ Optional lcategoria As Long = 1) As Variant 'senza riferimenti a: '"Microsoft Internet Controls" '"Microsoft HTML Object Library" 'lcategoria può assumere un valore da 1 a 3 '1-autoveicolo '2-motoveicolo '3-rimorchio 'sarebbe facile ottenere 'anche questi dati in questo caso relativi 'alla mia autovettura: 'Regione: Lombardia 'Cilindrata:1781 cc 'Potenza:110 KW 'Direttiva Euro:2 'Alimentazione: Benzina

'EcoDiesel: no 'Cavalli:18 'Posti:5 'Portata:425 kg 'Peso:1850 kg 'Numero Assi:2 'Categoria: autovettura 'Data immatricolazione:09/11/1999 'Codice uso:privato trasporto persone 'Dati relativi il pagamento: 'Riduzione: no 'Termine pagamento:30/09/2008 'Dati relativi al calcolo: ' 1 ed unica rata 'Scadenza:08/2009 'Mesi validità:12 'Tassa:322,00 'Interessi:4,28 'Sanzioni:9,66 'Totale:335,94 'infatti questo è il risultato 'dell'istruzione: 's = ' all("contenitore_gen"). _ ' innertext Dim myie As Object Dim s As String Dim myurl As String Dim RE As Object Dim M

'se usata come UDF 'l'aggiornamento della singola cella 'potrebbe richiedere alcuni istanti 'decommentare la riga qui sotto 'Application.Volatile False Set myie = CreateObject("InternetExplorer.Application") Set RE = CreateObject("VBScript.RegExp") myurl = _ "http://www1.agenziaentrate.it/servizi/bollo/calcolo/" & _ "propostapagamentosemplice.htm?targa=" & _ starga & _ "&tiposervizio=propostapagamentosemplice&categoria=0" & _ lcategoria myie.navigate myurl Do While myie.busy Or _ myie.readystate <> READYSTATE_COMPLETE DoEvents Loop s = all("contenitore_gen"). _ innertext Debug.Print s RE.Global = True RE.Pattern = _ "(Totale:)(\d+,\d+)" If RE.test(s) Then Set M = RE.Execute(s) Calcolo_Bollo_Ag_Entrate = _

CCur( _ RE.Replace(M(0), "$2")) Calcolo_Bollo_Ag_Entrate = _ "non disponibile" myie.quit Set myie = Nothing End Function Function Calcolo_Bollo_Potenza_Ag_Entrate( _ ByVal lpotenza As Long, _ Optional ByVal stipo As Boolean, _ Optional ldirettiva_euro As Long, _ Optional sregione As String = "Lombardia", _ Optional stipoveicolo As String = "Autoveicolo", _ Optional bgas_metano As Boolean) As Variant 'senza riferimenti a: '"Microsoft Internet Controls" '"Microsoft HTML Object Library" 'stipo se = true calcola la potenza 'in CV se = False o omesso in KW 'ldirettiva_euro può assumere i valori: '0,1,2,3,4,5 'sregione è il nome della regione 'escluso il trentino, indifferente 'il formato maiuscolo minuscolo 'ltipoveicolo può assumere i valori:

'autoveicolo 'motoveicolo 'ciclomotore 'bgas_metano =true se il veicolo è 'a metano o gpl Dim myie As Object Dim s As String Dim myurl As String Dim RE As Object Dim M 'se usata come UDF 'l'aggiornamento della singola cella 'potrebbe richiedere alcuni istanti 'decommentare la riga qui sotto 'Application.Volatile False Set myie = CreateObject("InternetExplorer.Application") Set RE = CreateObject("VBScript.RegExp") myurl = _ "http://www1.agenziaentrate.it/servizi/bollo/calcolo/kw_cv_ins.htm" myie.navigate myurl Do While myie.busy Or _ myie.readystate <> READYSTATE_COMPLETE DoEvents Loop all("pot").value = CStr(lPotenza)

If stipo Then all("tipo").value = "CV" If ldirettiva_euro < 0 Or _ ldirettiva_euro > 5 Then all("dirett").value = _ CStr(lDirettiva_euro) If LCase(sRegione) = "valle d'austa" Then sregione = "Valle d'aosta" sregione = StrConv(sRegione, vbpropercase) all("regione").value = sregione all("tipoveic").value = _ StrConv(sTipoVeicolo, vbpropercase) If bgas_metano Then all("gas").value = "si" myie.document.forms("ilform").submit Do While myie.busy Or _ myie.readystate <> READYSTATE_COMPLETE

DoEvents Loop RE.Global = True RE.Pattern = _ "(Euro:\s)(\d+,\d+)" s = all("outb"). _ innertext If RE.test(s) Then Set M = RE.Execute(s) Calcolo_Bollo_Potenza_Ag_Entrate = _ CCur( _ RE.Replace(M(0), "$2")) Calcolo_Bollo_Potenza_Ag_Entrate = _ "non disponibile" myie.quit Set myie = Nothing End Function