Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [word] - ricavare file singolo da file creato con stampa unione

    dunque...
    ho una serie di file di word relativi ad una lettera tipo creati tramite stampa unione ed uniti in nuovo documento, quindi il .doc mi si presenta con svariate pagine.
    la mia necessità è quella di estrapolare ogni singola lettera dal .doc creato con stampa unione --> copiarla su un nuovo foglio di word (uno per lettera) --> salvare il tutto con nome di cui una parte deve essere un codice presente nella lettera.

    come si procede?

    ps. ma perchè prima decidono che va bene creare una lettera tipo con stampa unione dopo che li hai avvisati di come rimarrà la lettera e poi a distanza di mesi cambiano idea?

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Ciao. Ho fatto una veloce ricerca su google e ho trovato questa discussione

    http://www.eggheadcafe.com/conversat...eadid=31177630

    in cui si rimanda a quest'altra pagina

    http://www.gmayor.com/individual_merge_letters.htm

    Spero che ti sia utile.

  3. #3
    ok, ora guardo i link e poi faccio sapere.


  4. #4
    risolto.

    posto il codice creato da giovanni zezza e modificato in base alle mie esigenza in moda che possa servire da esempio per problemi analoghi:
    codice:
    Public Sub separa_sezioni()
       Dim sezioni As Sections
       Dim sezione As Section
       Dim doc_da As Document
       Dim doc_a As Document
       Dim numero As Integer
        Dim brano As Range
        Dim codice As String
        Dim MyMsgBox As String
        
        MyMsgBox = InputBox("inserire data nel formato dd-mm-aa")
       Set doc_da = ActiveDocument
       Set sezioni = doc_da.Sections
       'numero = 1
       For Each sezione In sezioni
        Set brano = sezione.Range
            brano.Copy
            sezione.Range.Copy
            
            Set doc_a = Documents.Add
           doc_a.Range.Paste
          
            With Selection.Find
               .Wrap = wdFindStop
            .Execute FindText:="Cod.: "'cerca il termine che precede la sequenza numerica
          End With
            Selection.MoveStart Unit:=wdCharacter, Count:=6 'sposta la selezione di 6 caratteri (da modificare se i caratteri del termine sono maggiori)
           Selection.MoveRight Unit:=wdCharacter, Count:=12, Extend:=wdExtend'seleziona il codice(nel mio caso 12 caratteri)
    
     codice = Selection.Text:
             'MsgBox codice
        
           doc_a.SaveAs ("c:\lettere_foso\ap-" & codice & "-" & MyMsgBox & "-aut.doc")
           doc_a.Close
           
           'numero = numero + 1
       Next
       End Sub
    @nicola75ss: ho guardato il link, molto interessante, appena ho tempo lo guardo meglio, purtroppo il mio inglese è un pò arruginito e la traduzione di google fa schifo. nè approfitto per rimettere in sesto quel poco che conosco.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.