Faire du vélo à travers toutes les cellules dans un tableau word, qui est d'avoir fractionner des cellules
J'ai un 3 X 3 (dire tableA table dans MS word.
L' (2,2)ème cellule est une cellule fractionnée(divisé en 2X2 tableau).
Comment puis-je parcourir toutes les cellules dans le tableA.
Dim strCellText As String
Dim uResp As String
Dim Row As Integer
Dim Col As Integer
Dim itable As Table
For Each itable In ThisDocument.Tables
uResp = ""
For Row = 1 To itable.Rows.Count
For Col = 1 To itable.Columns.Count
strCellText = itable.Cell(Row, Col).Range.Text
uResp = uResp & Trim(strCellText)
Next
Next
MsgBox uResp
Next
Ce programme donne une erreur de compilation:
Run time error 5914
The requested member of the collection does not exist
Comment puis-je effectuer une itération si les cellules de tableaux qui a fractionner des cellules.
la ligne à laquelle vous avez cette erreur? généralement, votre code est correct, ce qui signifie qu'il parcourt toutes les cellules que vous avez besoin. Donc, ton problème est ailleurs, comme je n'ai pas d'erreur tout en travaillant avec votre code.
Avez-vous essayé avec un tableau avec une séparation des cellules.
désolé, j'ai manqué à ce point, j'ai donc vérifier à nouveau...
Avez-vous essayé avec un tableau avec une séparation des cellules.
désolé, j'ai manqué à ce point, j'ai donc vérifier à nouveau...
OriginalL'auteur Vinod | 2013-03-23
Vous devez vous connecter pour publier un commentaire.
Vous devriez supposer que chacun de la ligne a, le nombre maximal de colonnes. Dans votre situation, ce serait quatre. Pour itérer sur chaque cellule, je propose de définir
On Error Resume Next
avant la première boucle commence. Ensuite, à l'intérieur de votre boucle intérieure, essayez ce code:qu'aimeriez-vous faire dans votre situation? Parcourir toutes les cellules dans le tableau indépendamment du fait qu'elles sont divisées ou regroupées?
La méthode proposée fonctionne très bien, mais (peut-être de mon C++ arrière-plan), à l'aide d'erreur de manipulation normale et la fonction prévue de flux semble juste hacky. Je ne suis pas expérimenté en VBA, et je ne critique pas votre bonne solution, simplement en commentant la surprise que VBA n'offre pas quelque chose de plus propre (d'où, naturellement, plus "propre" est biaisée par mes opinions personnelles des dernières langues que j'ai utilisé). =) La craie jusqu'à newbie langue de choc.
La solution de la mine a été fourni il y a très longtemps. Mais répondre à la question de vélo à travers chaque cellule de la première table dans activedocument je suggère ce code:
For Each C In ActiveDocument.Tables(1).Range.Cells
>>'here do what you need for each cell
>>Next C
OriginalL'auteur Kazimierz Jawor
J'ai couru dans cette situation lorsque j'essaie d'extraire des données à partir de (parfois mal formés) des tables. C'est la façon dont je le manipuler:
Vérifier le nombre de colonnes
ou Aller à travers chaque cellule si vous souhaitez que toutes les données de toute façon
Aucun de ces travaux si les cellules ont été fusionnées verticalement.
OriginalL'auteur RSinohara
Si vous voulez aller à travers toutes les cellules de tous les tableaux dans un Document MS Word, même si les cellules sont fusionnées, j'ai eu les résultats que je voulais. Essayez ceci:
OriginalL'auteur Lav Zolovan Mehta