Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    13

    problema di cancellatura

    ho un database excel contenente i campi che voglio inserire nei segnalibri di un modello di word: Modello word: Il signor "segnalibro" è invitato alla festa il giorno "segnalibro2"
    ora inserisco il primo record e stampo questo:" Il signor "akira" è invitato alla festa il giorno"12/11/11" poi chiudo word risultato perfetto! il problema è che nell'aggiunta del prossimo record: avrò:
    Il signor "AkiraBertoletti" è invitato alla festa il giorno "12/11/1113/11/11" e mi stampa questa cosa che non voglio! cioè anzichè cancellare il contenuto del vecchio segnalibro e rimpiazzarlo con quello nuovo me lo aggiunge a fianco!
    perchè io vorrei aver:" il signor Bertoletti è invitato alla festa il giorno 13/11/11

    quindi vorrei sapere come aprire word senza vederlo, compilare i segnalibri, stamparli in automatico, chiudere word senza salvare, (non creare copie strane del file, ma poter riaprire sempre l'originale che sempre e solo la posizione dei segnalibri) così da poterlo riutilizzare per stampare il secondo record senza mantenere anche il contenuto del record precedente No "Akirabertoletti", ma solo "Bertoletti". Spero di essere quasi riuscito aspiegare quello che intendo...
    riassunto:
    devo lasciare il documento con i segnalibri, stampare in automatico il primo contenuto, cancellare il primo contenuto, chiudere senza salvare. grazie per la vostra pazienza.

  2. #2
    Utente di HTML.it L'avatar di U235
    Registrato dal
    Mar 2006
    Messaggi
    1,536
    domanda :
    come facciamo a sapere cosa sbagli? siamo programmatori non veggenti ! senza il codice che usi è parecchio difficile...

    posta il codice; indica il linguaggio; leggi il regolamento (scusami ma una volta tanto lo volevo dire pure io )

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    13
    Imports word = Microsoft.Office.Interop.Word 'DEVI fare reference poi importa dentro la parola word
    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
    Dim x As Integer
    Dim i As Integer
    videoscrittura = CreateObject("word.Application")
    videoscrittura.Visible = True
    pagina = videoscrittura.Documents.Open("c:\Users\proprietar io\Documents\Marco.rtf")
    pagina.ActiveWindow.Document.Bookmarks("pippo").Se lect() REM releziona il segnalibro, DEVO UTILIZZARE pagina perchè l'ho aperto con pagina
    videoscrittura.Selection.TypeText(TextBox1.Text) 'inserisce sto testo
    x = TextBox1.TextLength
    TextBox2.Text = x

    pagina.ActiveWindow.Document.Bookmarks("data").Sel ect()
    videoscrittura.Selection.TypeText("24/11/11")
    'pagina.PrintOut()


    For i = 0 To i = x
    pagina.ActiveWindow.Document.Bookmarks("pippo").Se lect()
    videoscrittura.ActiveWindow.Selection.Delete(TextB ox1.Text)
    Next
    pagina.Save()
    pagina.Close()


    Allora ragazzi il mio problema è semplice fino a pagina.printout() è tutto perfetto fa esattamente cio che dico .. solo che poi non riesco a chiudere word, senza salvare volontariamente il contenuto dei segnalibri! (io voglio che word perda la memoria del record1)purtroppo mi rimane in memoria il record1 e quando ricomincio il programma aggiunge il record2 a fianco del record1, caspita non riesco ad automatizzare il cancellamento del record1 nella posizione del bookmark in nessun modo mi potreste aiutare??

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    13
    Il linguaggio è visual basic 2008 express .net
    interazione tra word e VB

  5. #5
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Se non ti serve avere un file con le nuove informazioni,
    basta non salvarlo mai e, ad ogni iterazione, sostituire il testo con quello nuovo.

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    13
    Esatto bravissimo Gibra è proprio quello che volevo fare tuttavia ho questo problema:

    se nel codice metto pagina.Close() senza aggiungere pagina.Save() in automatico VB chiude word
    e non mi lascia rispondere alla domanda: vuoi salvare i cambiamenti nel file di word?" così il programma in automatico mi crea una copia del file dove saranno mantenuti i cambiamenti e tutte le volte che dovrò riaprire il file mi riporterà sempre nella copia con già inseriti i record precedenti!! è questo che non riesco a capire!!

  7. #7
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Non capisco perchè chiudi il documento, quando è sufficiente modificare i dati.

    Comunque, Close accetta l'argomento opzionale SaveChanges
    che ti permette di chiudere senza salvare.

    http://msdn.microsoft.com/en-us/library/aa537164(v=office.11).aspx#officevsto2005wordom_thedocumen tobject

    Suggerimento:
    Ma non studi mai la guida quando programmi?
    Io non riesco a farne a meno, e raramente ho bisogno di chiedere aiuto sul forum dato che la guida mi da tutte le informazioni necessarie.
    Se poi cerco qualcosa di particolare che non è spiegato sulla guida faccio una ricerca su Google ed in genere trovo tutto quello che mi occorre.

    Scusa se te lo dico, ma io prefersico così piuttosto che star lì ad aspettare che 'forse' qualcuno mi risponda. E trovo la soluzione molto più in fretta.


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.