Ich schreibe ein Makro zum Hinzufügen von Indexeinträgen Einträge in Tabellen in Word. Einige Zellen enthalten eine einzelne Zeichenfolge, für die der hinzugefügte Eintrag benötigt wird. ZB Zelle enthält "S875".So legen Sie Zeichenfolge in einem Array auf den Bereich in Word VBA
For Each oRow In oTable.Rows
If oRow.Cells.count = 4 Then
oTable.Cell(oRow.Index, 4).Select
Selection.Expand unit:=wdCell
oem = Left$(Selection.Text, Len(Selection.Text) - 2)
If (oem Like "*O.E.M*") Or (oem Like "*OEM*") Then
'ignore this row
Debug.Print oem
Else
ActiveDocument.Indexes.MarkEntry Range:=Selection.Range, Entry:=oem, _
EntryAutoText:=oem, CrossReference:="", CrossReferenceAutoText:="",
BookmarkName:="", Bold:=False, Italic:=False
End If
End If
Next oRow
Aber ich habe einige Zellen bekam, die zwei oder mehr Indexeinträge müssen hinzugefügt, zB S875, 876. ich diese in ein Array aufgeteilt haben und kann Schleife: Ich habe den folgenden Code für diese verwendet durch das Array aber bin ich darauf, wie Sie den Bereich zum Hinzufügen der Indexeinträge festlegen. Was ich habe, ist:
If Len(oem) > 6 Then
oemArray() = Split(oem, ", ")
For i = LBound(oemArray) To UBound(oemArray)
'need to use Indexes.MarkEntry to add an index entry for each
' string in the array
Debug.Print oemArray(i)
Next i
End If
Also ich denke, ich entweder muß irgendwie die Auswahl auf dem Array zu jedem Eintrag ändern oder die Range verwenden, aber ich bin nicht sicher genau?