Sviluppare funzionalita su Microsoft Office con VBA ELENCO PREZZI da PDF a EXcel

Login Registrati
Stai vedendo 19 articoli - dal 26 a 44 (di 44 totali)
  • Autore
    Articoli
  • #37573 Score: 0 | Risposta

    vecchio frac
    Senior Moderator
      272 pts

      Dodi ha scritto:

      fammi una macro che mi spezza alla parola chiave

      Sì lo posso fare ma mi serve un po' di tempo.

      Comunque avevo ragione io, analizzando bene il file pdf capisco che si tratta di apprestamenti per la sicurezza, è quindi molto molto simile al prezziario che ho incorporato nei miei modelli di DUVRI... so bene di cosa si tratta e so che è un lavoraccio infame 🙂

      #37575 Score: 0 | Risposta

      vecchio frac
      Senior Moderator
        272 pts

        Però richiamo l'attenzione sul fatto che la trasposizione da PDF a Excel col copia incolla (ma anche col sistema patel) non funziona bene quando ci sono dei segni = o - nelle righe, che vengono interpretati male da Excel (vedi le righe del file Dodi "OS-2023.xlsx" che contengono FALSO, come da riga 85 in poi) come se fossero formule da calcolare.

        Per il resto visto che ho iniziato a lavorarci ti confermo che non è una cosa impossibile da fare essendo la codifica standardizzata (ogni voce inizia con "OS." poi segue la sigla categoria, quindi si possono ricavare le celle iniziali di ogni apprestamento).

        #37576 Score: 0 | Risposta

        albatros54
        Moderatore
          89 pts

          Buongiorno, oggi è la festa del Papa', Auguri.

          Sto seguendo  il the-end , cosa ho fatto.

          Dal file Pdf che è stato allegato, l'ho salvato in formato xlm, l'ho importato in Word modificandolo, elimimando la intestazioni che non interessano, l'ho esportato da word in Pdf, da questo Pdf  l'ho salvato in xlm. A questo punto l'ho importato in Excel ed è uscito fuori il file che via allego, non so se puo servire.

           

          Qual è il punto di avere gusti diversi, se non mostrare che i cervelli lavorano diversamente, che pensiamo diversamente? ( Alan Turing)
          Sempre il mare, uomo libero, amerai!
          ( Charles Baudelaire )
          Allegati:
          You must be logged in to view attached files.
          #37578 Score: 0 | Risposta

          albatros54
          Moderatore
            89 pts

            Ancora piu compatto.

             

            Qual è il punto di avere gusti diversi, se non mostrare che i cervelli lavorano diversamente, che pensiamo diversamente? ( Alan Turing)
            Sempre il mare, uomo libero, amerai!
            ( Charles Baudelaire )
            Allegati:
            You must be logged in to view attached files.
            #37580 Score: 0 | Risposta

            Dodi
            Partecipante
              2 pts

              Buongiornoo a tutti e auguri a tutti i papà 

              inizio da Parte, 

              La soluzione proposta funziona su office 365 e poi per quello che mi serve senza passare dal vba occorre che il file da convertire (pdf) con il query sia già con struttura tabella, cmq ancora grazie per i suggerimenti, magari mi può tornare comodo come modo quando ho un computo già sviluppato in fase di gara,

              Poi 

              Vecchio frac, 

              In effetti in alcune celle esce l'errore #NOME

              Perché trovando il segno meno lo esegue come calcolo, 

              In effetti la prima cosa che faccio dopo aver copiato tutto da pdf faccio il filtro e controllo che non ci sia nessun errore,

              Se trovo errori vado a controllare dove c'è e tolgo il segno = e lo sostituiscono con ' 

              Poi inizio a inserire colonne e faccio la funzione ''SE'' 

              Per gli articoli scrivo =SE(A1=OS.;1;0)

              E poi filtrando 1 mi escono fuori tutti gli articoli e li evidenzio, e cosi via, 

              Poi per l'unità misura 

              Prezzo un 

              E % manodopera faccio le tabulazioni copiando e incollando su altri fogli per poi tornare sul primo foglio e incollare il tutto. E avere la struttura come dal secondo file di albatros. 

              Ovvio che quando faccio i filtri inizio a fare pulizia delle cose che non servono.

              Insomma potete capire che bordello mi ritrovo a fare per colpa delle teste dure a non rilasciare file editabili e già strutturati  per ussarlo. Va Bhe uno sfogo penso che me lo consentite. 

              Poi Albatros che ti saluto e ben entrato nella discussione, 

              Il tuo secondo file sembra ok per come e' strutturato, tornerebbe comodo per poi applicare i colori e usare il codice di vecchio frac per incolonnarlo a modo di elenco prezzi, 

              Art.. 

              Descr. 

              U. M

              P. U

              % manod.

              Ma sicuramente avrai perso tanto tempo per ottenere quel risultato, io per ottenere una cosa simile ci metto un oretta e passa.  fai lo stesso lavoro che faccio io su excel, pulendo tutto quello che non serve.  Ma provo anche io a vedere i tuoi passaggi 

               

              #37581 Score: 0 | Risposta

              Dodi
              Partecipante
                2 pts

                Sempre per Albatros 

                Su word devi scorrere tutte le righe e vedere cosa serve o non serve e cancellare, excel a mio avviso in qsta caso aiuta di più perché puoi fare i filtri e allo stesso tempo puoi decidere se cancellare o evidenziare, insomma con un passaggio risulvi più problemi contemporaneamente. 

                Ma non posso dire che il tuo risultato non sia buono o non si avvicina alla prima fase, per poi intabellare il tutto con il codice di vecchio frac

                #37582 Score: 0 | Risposta

                vecchio frac
                Senior Moderator
                  272 pts

                  Dodi ha scritto:

                  Sempre per Albatros 

                  Se il metodo di Albatros non è esageratamente complesso da attuare, si può dire che questa è la base di partenza perfetta.

                  Altrimenti rimango con il mio pensiero e cioè dammi pazienza un attimo e produco il codice che legge la base dati grezza (cioè senza alcun intervento) e produce, in teoria (risultato da ottenere), il primo passaggio come quello di Albatros e poi, secondo passaggio, il risultato finale dopo aver applicato la macro sui colori.

                  albatros54 ha scritto:

                  oggi è la festa del Papa', Auguri.

                  A tutti i papà 😀

                  #37583 Score: 0 | Risposta

                  Dodi
                  Partecipante
                    2 pts

                    questo risultato io lo ottengo con solo un passaggio, e ci metto davvero 1 minuto, 

                    apro il PDF 

                    seleziono i dati, 

                    e li copio nella cella A1, facendo attenzione a copiarlo come testo, 

                    il risultato di partenza e questo, 

                    poi applico filtri ecc... ecc.....

                    se avevo il problema di solo 2 oppure 3 elenchi prezzi non avrei aperto la discussione, 

                    quindi Vecchio frac tranquillo prenditi il tempo che vuoi, 

                    ma  oggi goditi la famiglia, 

                    non pensare al mio problema, 

                    c'è tempo, 

                     

                    un saluto  a tutti e rinnovo gli auguri  a noi papa'

                     

                    Allegati:
                    You must be logged in to view attached files.
                    #37585 Score: 0 | Risposta

                    vecchio frac
                    Senior Moderator
                      272 pts

                       

                      Dodi ha scritto:

                      seleziono i dati, e li copio nella cella A1

                      Non ho capito come ci riesci. Io ho provato, apro il pdf, seleziono tutto, copio e incollo in Excel, ma non ottengo la copia di tutti i dati e comunque non come il tuo risultato. Neanche a copiare in Word, perchè se mi va bene copia solo fino al sommario.

                      Comunque l'ultimo allegato (File 00.xlsx) è perfetto per la procedura che sto scrivendo.

                      #37586 Score: 0 | Risposta

                      vecchio frac
                      Senior Moderator
                        272 pts

                        Una cosa che non ti ho chiesto è: vuoi conservare anche la descrizione di cui alla VOCE? 

                        Esempio

                        VOCE 0101
                        Costo di utilizzo di recinzione provvisoria realizzata con pannelli di legno, a incollaggio fenolico, sorretti da morali e sottomisure 
                        e comunque rispondente alle indicazioni contenute nel regolamento edilizio comunale, fornita e posta in opera. Sono compresi: i 
                        montanti di sostegno dei pannelli delle dimensioni minime di cm 10 x 10; l'infissione dei montanti nel terreno o incastrati in 
                        adeguata base di appoggio; le tavole sottomisure poste sul basso, in sommità ed al centro del pannello, inchiodate o avvitate al 
                        pannello medesimo e ai montanti di sostegno comprese le saette di controventatura. E' inoltre compreso quanto altro occorre per l'utilizzo temporaneo della recinzione provvisoria.

                        #37587 Score: 0 | Risposta

                        vecchio frac
                        Senior Moderator
                          272 pts

                          Posso allegare una prima proposta. Non mi sembra che faccia nu brutto lavoro ma qualche cosa da affinare c'è sicuramente.

                          Per esempio la voce OS.AP.A.0109.B nel file ultimo allegato soffre del copincollaggio della struttura della pagina/tabella del pdf, perciò (vedi le righe 89-97) la mia macro si inganna e considera come facente parte della descrizione della voce in questione tutte le righe da 91 a 95 (perchè il codice fa una scansione brutale delle righe finchè non trova UNITA' DI MISURA).

                          A parte qualche piccolo inconveniente non mi pare un brutto risultato. Certo bisogna passare un po' di tempo a scorrere il foglio Listino per depurarlo degli errori (righe in più aggiunte dove non ci vanno).
                          La macro fa anche a meno dei colori e produce un Listino già a partire dai dati grezzi (nel file di prova, che allego, ho riportato in foglio1 tutto il "file 00" di prova che hai allegato poco sopra).

                          Allego il file.

                          Allegati:
                          You must be logged in to view attached files.
                          #37589 Score: 0 | Risposta

                          albatros54
                          Moderatore
                            89 pts

                            Allora, mi vergogno,pero con due righe credo di poter raggiungere il "Target".

                            In allegato il file, si riferisce al file che ho postato nel #37578, dove ho inserito , nel foglio1 queste righe,(che sono da implementare)

                            Option Explicit
                            Sub m()
                                Dim lastrow As Integer, a As Integer, b As Integer
                                Dim separa As Variant
                                lastrow = Cells(Rows.Count, 1).End(xlUp).Row
                                b = 1
                                For a = 1 To lastrow
                                    If Left(Cells(a, 1).Text, 1) = "O" Then
                                        Worksheets("Listino").Cells(b, 1) = Cells(a, 1).Text
                                        Worksheets("Listino").Cells(b, 2) = Cells(a, 1).Offset(1)
                                        separa = Split(Worksheets("Foglio1").Cells(a, 1).Offset(2), ":")
                                        Worksheets("Listino").Cells(b, 3) = separa(1)
                                        Worksheets("Listino").Cells(b, 4) = Cells(a, 1).Offset(4)
                                        Worksheets("Listino").Cells(b, 5) = Cells(a, 1).Offset(6)
                                        b = b + 1
                                    End If
                            
                                Next
                            
                            End Sub
                            
                            

                            allego file

                             

                            Qual è il punto di avere gusti diversi, se non mostrare che i cervelli lavorano diversamente, che pensiamo diversamente? ( Alan Turing)
                            Sempre il mare, uomo libero, amerai!
                            ( Charles Baudelaire )
                            Allegati:
                            You must be logged in to view attached files.
                            #37591 Score: 0 | Risposta

                            Dodi
                            Partecipante
                              2 pts

                              Ho provato la tua soluzione al volo, 

                              lunedì provo a capire il codice e cerco di analizzare il lavoro che fa, 

                              cmq in rima battuta sembra che fa un buon lavoro, 

                              dovrò fare un po di lavoro di pulizia delle voci nella tariffa, 

                              eliminando il numero pagina, le intestazioni e le voci, dico questo perche se provi il file che hai allegato vedi nel foglio listino alla riga 5, nella descrizione copia il numero del foglio,

                              cmq siamo a un ottimo punto. 

                              penso che previo controlli che farò in modo puntuale e farò delle prove concrete, mi sembra che hai fatto un grandissimo lavoro, 

                              poi mentre per risponderti come faccio ad ottenere il mio file, 

                              spero di spiegartelo bene,

                              apro il PDF seleziono tutto, faccio copia, 

                              poi apro excell 

                              ,i posiziono nella cella A1, e faccio copia speciale, 

                              si apre una maschera e fleggo sull'opzione testo, e il gioco e fatto, 

                              prova e fammi sapere se ottini il mio stesso risultato, facendo così evito di fare tutti i passaggi che ha proposto Albatros,

                              cmq per ora goditi la domenica, mi sembra che hai gia fatto un buon lavoro, come detto previo mie verifiche puntuali. 

                               

                              mentre per l'atro quesito la VOCE non mi serve.  

                               

                              #37592 Score: 0 | Risposta

                              Dodi
                              Partecipante
                                2 pts

                                ciao Vecchio Frac

                                con 

                                Const categorie As String = "AP CI IF IM MC MP MS PR"

                                a cosa si riferiscono "AP CI IF IM ecc.... ecc....

                                mi serve capirlo perchè poi se tutto funziona devo applicare la soluzione a gli altri listini, che sono simili ma cambia il codice tariffa non sarà più OS. ma avrà un altro inizio tariffa, esempio BA. oppure MO. 

                                e li basta che cambio 

                                l'  If s Like "OS." & v & ".*" Then

                                con 

                                If s Like "BA." & v & ".*" Then

                                riesco, spero a  far funzionare il tutto, 

                                come detto mi serve capire a cosa si riferiscono "AP CI ecc. ecc. nella stringa Const.

                                potresti spiegarmi per piacere cosa ti riferisci?

                                è una stringa universale poi per gli altri listini? 

                                 

                                intanto grazie di cuore, mi sembra che siamo davvero in linea con quello che mi serve. 

                                 

                                grazie vecchio frac. 

                                mentre per Albatros, 

                                proverò a tesare la tua soluzione dopo che ho magari impostato un listino sulla base della mia inziale proposta di soluzione, e cioè quella di ripulire il foglio da dati inutili, 

                                ma la soluzione di Vecchio Frac ,i eviterebbe anche di fare la funzione "SE" e di intabulare l'unità di misura , il prezzo unitario e la % di manodop. 

                                 

                                mi sembra sia uno step avanti che mi aggevola molto, 

                                dovrò solo depurare un po i dati esempio numero foglio e N° voce, 

                                ancora grazie intanto.  

                                 

                                #37593 Score: 0 | Risposta

                                albatros54
                                Moderatore
                                  89 pts

                                  Dodi ha scritto:

                                  Const categorie As String = "AP CI IF IM MC MP MS PR"

                                  a cosa si riferiscono "AP CI IF IM ecc.... ecc....

                                  si riferiscono al completamento del tuo codice articolo ti "OS.AP.A.102c" che servono ad individuare il codice

                                   

                                  Qual è il punto di avere gusti diversi, se non mostrare che i cervelli lavorano diversamente, che pensiamo diversamente? ( Alan Turing)
                                  Sempre il mare, uomo libero, amerai!
                                  ( Charles Baudelaire )
                                  #37594 Score: 0 | Risposta

                                  vecchio frac
                                  Senior Moderator
                                    272 pts

                                    albatros54 ha scritto:

                                    mi vergogno,pero con due righe

                                    Ti vergogni di che? Anzi   

                                    Dodi ha scritto:

                                    Ho provato la tua soluzione al volo, 

                                    Credo che Dodi si riferisca a me... ma l'ho capito alquanto dopo 🙂

                                    Dodi ha scritto:

                                    a cosa si riferiscono "AP CI IF IM ecc.... ecc....

                                    Sono le categorie definite nel prezziario naturalmente... le ho ricavate dall'indice:
                                    categoria AP Apprestamenti
                                    categoria CI Costi integrativi della sicurezza
                                    categoria IF Interventi finalizzati
                                    eccetera, come ha intuito Albatros quando dice

                                    albatros54 ha scritto:

                                    si riferiscono al completamento del tuo codice articolo ti "OS.AP.A.102c" che servono ad individuare il codice

                                    Dodi ha scritto:

                                    è una stringa universale poi per gli altri listini? 

                                    No, devi controllare l'indice degli altri listini ovviamente.

                                    Dodi ha scritto:

                                    dovrò solo depurare un po i dati

                                    certamente, ma lo puoi fare alla fine, chiaro che con due o tremila righe avrai un bel daffare, ma mai come dover fare tutto a mano copia incollando i titoli e inserendo i colori 🙂

                                    #37598 Score: 0 | Risposta

                                    Dodi
                                    Partecipante
                                      2 pts

                                      Vecchio Frac.

                                      buongiorno, 

                                      ho avuto modo di testare la tua soluzione, 

                                      ho visto che quando trova l'errore il codice si ferma, 

                                      e fin qui tutto ok, 

                                      basta fare un controllo dei dati copiati prima di lanciare la macro, 

                                      mentre quando trova le voci maggiorazione, 

                                      che il valore si esprime in Percentuale, non mi riporta il prezzo unitario, 

                                      bisognerebbe inserire un ulteriore variabile, 

                                      se vedi il file che ti allego, sul foglio 1 ho evidenziato alcune voci per farti capire, 

                                      mentre se vedi il foglio LISTINO ho evidenziato le celle dove mancano informazioni, e cioè la (%) e il prezzo unitario

                                       

                                      spero di aver spiegato bene, 

                                      puoi dare un occhio per piacere quando hai tempo?

                                       

                                      grazie. 

                                      Allegati:
                                      You must be logged in to view attached files.
                                      #37600 Score: 0 | Risposta

                                      vecchio frac
                                      Senior Moderator
                                        272 pts

                                        Dodi ha scritto:

                                        ho visto che quando trova l'errore il codice si ferma, 

                                        Quale errore? 🙂

                                        Dodi ha scritto:

                                        quando trova le voci maggiorazione, 

                                        che il valore si esprime in Percentuale, non mi riporta il prezzo unitario, 

                                        Eh già, io ho previsto di controllare solo le voci UNITA' di MISURA e IMPORTO (in euro) ma non altre voci. Adesso che mi hai fatto vedere che esiste anche PERCENTUALE bisogna discriminare anche questo caso.

                                        #37601 Score: 0 | Risposta

                                        vecchio frac
                                        Senior Moderator
                                          272 pts

                                          Riallego il file rivisto.

                                          Allegati:
                                          You must be logged in to view attached files.
                                        Login Registrati
                                        Stai vedendo 19 articoli - dal 26 a 44 (di 44 totali)
                                        Rispondi a: ELENCO PREZZI da PDF a EXcel
                                        Gli allegati sono permessi solo ad utenti REGISTRATI
                                        Le tue informazioni: