mercoledì 21 febbraio 2018

vba excel Scrivi file Fdf Comunicazione Dati Iva

‘ vba excel  Scrivi file Fdf Comunicazione Dati Iva

Sub ScriviFdfComunicazioneDatiIva()

Dim foglio, nomefoglio

nomefoglio = "comunicazione-iva"

Set foglio = Sheets(nomefoglio)

'

Dim quanterighe, contarighe

'

quanterighe = Range(foglio.UsedRange.Cells(foglio.UsedRange.Rows.Count, 1).Address).Row

contarighe = 2

'

Dim mese

mese = Trim(foglio.Range("C2").Value)

'

Dim colonnacampo, colonnavalore, valorecampo, nomecampo

colonnacampo = "D"

colonnavalore = "C"

Dim s

s = ""

s = s & "%FDF-1.2" & vbCrLf

s = s & "1 0 obj" & vbCrLf

s = s & "<<" & vbCrLf

s = s & "  /FDF" & vbCrLf

s = s & "  <<" & vbCrLf

's = s & "    /Fields [ << /V (valore campo)  /T (nome_campo)>> ]" & vbCrLf

'

s = s & "    /Fields [ " & vbCrLf

'

nomecampo = "azienda"

valorecampo = "nome azienda"

 

s = s & "    << /V (" & valorecampo & " )  /T (" & nomecampo & ")>> " & vbCrLf

'

While contarighe <= quanterighe

      nomecampo = Trim(foglio.Cells(contarighe, colonnacampo).Value)

      valorecampo = Trim(foglio.Cells(contarighe, colonnavalore).Value)

      If Len(nomecampo) > 0 Then

         If IsNumeric(valorecampo) = True Then

            valorecampo = Format(valorecampo, "#,###.00")

         End If

         s = s & "    << /V (" & valorecampo & " )  /T (" & nomecampo & ")>> " & vbCrLf

      End If

      contarighe = contarighe + 1

Wend

'

'

s = s & "     ]" & vbCrLf

'

s = s & "    /F (comunicazione-iva-2017_editabile.pdf)" & vbCrLf ' rifrimento al file pdf editabile contente i campi presenti nella colonna “colonna campo”

s = s & "    /ID [ ()()]" & vbCrLf

s = s & "  >>" & vbCrLf

s = s & ">>" & vbCrLf

s = s & "endobj" & vbCrLf

s = s & "trailer" & vbCrLf

s = s & "<<" & vbCrLf

s = s & "/Root 1 0 R" & vbCrLf

s = s & ">>" & vbCrLf

s = s & "%%EOF" & vbCrLf

'

Dim fs, a, archivio

If Len(mese) > 0 Then

   archivio = "C:\iva-comuniazioni-liquidazioni\comunicazione-iva" & mese & ".fdf"

Else

   archivio = "C:\iva-comuniazioni-liquidazioni\comunicazione-iva.fdf"

End If

'

Set fs = CreateObject("Scripting.FileSystemObject")

Set a = fs.CreateTextFile(archivio, True)

a.WriteLine (s)

a.Close

 

'

End Sub

 

Nessun commento:

Posta un commento