Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    104

    [visual basic] Identificare una tabella in un file .doc

    ciao a tutti

    Come faccio a identificare una specifica tabella in un documento word nel quale ci sono x tabelle?

    Apro un documento in cui sopra ci sono x tabelle, non so quante, e poi c'è quella che mi serve. Dopo la mia possono esserci altre x tabelle. Esiste un identificativo univoco per quella tabella?

    Item mi cambia a seconda del numero di tabelle.


    In alternativa, è possibile selezionare una tabella subito dopo un bookmark?

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,461

    Moderazione

    Di quale versione di Visual Basic si parla?
    Così correggo il titolo e sposto...

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    104
    6.3

    scusate l'errore di pubblicazione

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    758
    Originariamente inviato da YuZzoLo
    6.3
    Immaginiamo che tu intenda dire 6.0 con SP3. (perché dobbiamo sempre immaginare?)
    In un documento Word le tabelle fanno parte della collection Tables e sono quindi individuabili mediante un indice che corrisponde alla posizione occupata nel documento.

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    104
    esatto, ma appena la posizione cambia , cambia anche l'indice.
    Se uso indice 2 per identificare una tabella, poi inserisco una tabella sopra, la tabella che uso ha indice 3.

    Immaginando di non sapere quante tabelle ho sopra, esiste un modo di identificarle univocamente? tipo un puntatore?

    "Immaginiamo che tu intenda dire 6.0 con SP3"
    Lo immagino anche io non sono programmatore vb, in ufficio uso progress e quanto chiedo mi serve per integrare una stampa word nel codice progress.

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    758
    Puoi mettere un Bookmark all'interno della tabella, per esempio nella prima cella della prima riga.

  7. #7
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Originariamente inviato da Grumpy
    Immaginiamo che tu intenda dire 6.0 con SP3.
    Invece secondo me intende proprio VB 6.3, solo che NON si riferisce a VB6.0,
    ma al VBA 6.3 ovvero Visual Basic for Applications di Word.


  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    758
    Originariamente inviato da gibra
    Invece secondo me intende proprio VB 6.3, solo che NON si riferisce a VB6.0,
    ma al VBA 6.3 ovvero Visual Basic for Applications di Word.

    Temo che tu abbia ragione.

  9. #9
    Utente di HTML.it
    Registrato dal
    Jan 2017
    Messaggi
    1
    E' passato molto tempo, ma prova con questa semplice macro:
    --------------------------------------------
    Selection.Bookmarks.Add ("Segnalibro_Tmp")
    For I = 1 To ActiveDocument.Tables.Count
    ActiveDocument.Tables(I).Select
    If Selection.Bookmarks.Exists("Segnalibro_Tmp") Then Indice = I: Exit For
    Next I
    ActiveDocument.Bookmarks("Segnalibro_Tmp").Select
    ActiveDocument.Bookmarks("Segnalibro_Tmp").Delete
    MsgBox "Indice: " & Indice

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.