title image


Smiley Re: Name doppelt ?
Hallo,

vielen Dank. Anfangs war alles klar, bis mir bei einer anderen Tabelle etwas auffiel. Wie ich meine, scheint VB einen Bug zu haben bei der Kombination

ActiveDocument.Tables(1).Columns(1).Select

a1 = Selection.Range.text



Ich habe im folgenden entsprechende Anmerkungen zum Code gemacht und einiges probiert. Vielleicht findest Du heraus, woran es liegt, was mir da so auffiel.

Gruß

Siggi



1)

' ActiveDocument.Tables(1).Columns(1).Select scheint in der Kombination mit a1 = Selection.Range.text dem Code ActiveDocument.Tables(1).Select zu entsprechen, also ist in a1 die ganze Tabelle und nicht die 1. Spalte (Bug?)

'Grund:

'wenn in der 1. Spalte z.B. Müller steht und dieser Name in einer anderen Spalte noch vorkommt, _

wird Müller in der 1. Spalte markiert

ActiveDocument.Tables(1).Columns(1).Select

a1 = Selection.Range.text



2) strSuchwort = aCell.Range.text

'Bei Tests beobachtet (alle Worte stehen getrimmt in einer Zelle):

'stehen in verschiedenen Zellen der 1. Spalte z.B. die Worte gleich bzw. ungleich,

'wird fehlerhaft das Wort "gleich" markiert; dasselbe bei HEIM/UNHEIM: hier wird HEIM markiert

'Dies liegt wohl an der instr-Funktion: sie entdeckt z.B. HEIM in UNHEIM oder gleich in ungleich

'bei den Namen Fisch/Fischbach oder Haus/Hauss wird nichts markiert, da mit strSuchwort = aCell.Range.text die Zellmarken eingeschlossen sind und z.B. Fisch incl. Zellmarke in Fischbach nicht vorkommt

...

If InStr(intPosErstesVorkommen + Len(strSuchwort), a1, strSuchwort) > 0 Then

...



3) strSuchwort = Mid(aCell.Range.text, 1, Len(aCell.Range.text) - 2) statt

strSuchwort = aCell.Range.text entfernt die Zellmarken. Aber dann werden alle Namen markiert, die einen Teilstring anderer Namen sind (HEIM markiert, da Teilstring von UNHEIM)

' Vielleicht geht es mit instr doch nicht, da man wohl den einzelnen Namen haben muss. Aber was dann?





geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: