2016-04-06 18 views
0

numaralandırma ile word belgesi tablolarının sütunlarından hücre değerleri ayıklama tabloların çoğu için çalıştı ama bir kez ben boş bir dize tbMytable.Rows[iRowIndex].Cells[1].Range.Text

tarafından döndü Microsoft Office Word 2013'te belgeyi açarak el ile işaretli, ben görebildiğim İlk sütun hücreleri için değerler step 1, step 2 vb.

Bazı hata ayıklama sonrasında, bu tablonun ilk sütun için otomatik numaralandırma kullandığı (adım sayısı dizesi 1 aralık genişliğindeydi) olduğunu anladım. Belgeyi Word 2013'te tekrar açtım ve bunu doğruladım.otomatik Ben bu yaklaşımı kullanarak hücrelerin veri okuyorum <code>Microsoft.Office.Interop.Word</code> <br> kullanarak bir sözcük otomasyon tabanlı uygulama geliştiriyorum

Şimdi böyle bir hücreden Word Interop kullanarak değeri nasıl okuyabilirim?
Ve \x0d\x07 kırpmadan veya clmyCell.Range.MoveEnd(WdUnits.wdCharacter, -1) yapmaktan başka hücre işaretçisi olmayan hücrelerden vales çıkarmak için daha iyi bir yaklaşım var mı?


DÜZENLEME: eklemiş
bir sample document   [1] açıklama.

(zip için parola password, boşluksuzdur).

İlk sütundaki hücreler dışındaki tüm hücrelerden verileri okuyabiliyorum.
İlk sütundaki hücrelerden (örneğin, "Adım 2" dizesi) word interop'u kullanarak verileri nasıl okurum?

[1]       http://www.fileconvoy.com/dfl.php?id=g25ad0529c423888e999811789c1cece853a016e55



(zip şifresi herhangi bir boşluk olmaksızın password olan).

+0

Korkarım ki son detayları anlayamıyorum. Hücre içeriğini ayıkladığınızı, hücre sonu karakterlerini kestiğinizi takip ediyorum. Ama otomatik numaralandırma ile ilgili olarak "nasıl" şeyler işe yaramıyor belli değil. Belki sonucun daha kesin bir tanımını verirseniz elde edeceğiniz sonucu gerçekten elde edersiniz? FWIW otomatik numaralandırma Range.Text'de döndürülmez. Sadece 'Paragraf' ve 'Paragraf.Range' nesneleri ("Liste" ile olan özellikler) aracılığıyla erişebilirsiniz. –

+0

@CindyMeister Gönderiyi örnek bir belge ve buradaki özel sorunu paylaşarak güncelledim. Umarım açıklığa kavuşturur. –

+0

Örnek belge açılamıyor ... Web sayfası bulunamadı –

cevap

1

ben burada belge üzerinde daha test ve VBA nasıl yapıldığını göstermek için küçük bir örnektir

Sub ShowTableCellValue() 

    If ActiveDocument.Tables(1).Cell(1, 1).Range.ListParagraphs.Count > 0 Then 
     MsgBox ActiveDocument.Tables(1).Cell(1, 1).Range.ListFormat.ListString 
    End If 

End Sub 

haykırmak değilse ben, sen C# için kendiniz çevirebilir tahmin ve ben de bunu yapman için sana yardım edeceğim