Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / пересчет данных в таблице word по примеру. / 25 сообщений из 61, страница 1 из 3
11.03.2010, 20:37
    #36515198
vkopitsa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Доброе время суток! Помогите пожалуйста .

Возможно ли как-то сделать чтобы в таблице пересчитывались данные, таблицы очень большие бывают и вручную это очень долго делать, пытался найти, но ненашол. Структура таблиц одинаковая. Описные и пример в архиве.

Задача_Пример
...
Рейтинг: 0 / 0
11.03.2010, 21:01
    #36515231
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Можно, разумеется, но не очень понятно, что вы хотите.

Если хотите, чтобы за вас это кто-то сделал - так и пишите, это очевидно будет стоить денег.

Если хотите сделать самостоятельно с нашей помощью - задавайте конкретные вопросы - что именно не получается (обход таблиц, обход ячеек, написание формулы и т.п.)
...
Рейтинг: 0 / 0
11.03.2010, 23:52
    #36515483
vkopitsa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Shocker.Pro,

обход таблиц, обход ячеек, не подскажите как сделать, нигде не нашла по таблице, и если можно побольше инфы по работе с таблицами ворда. Буду очень благадарен.
...
Рейтинг: 0 / 0
12.03.2010, 00:05
    #36515502
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
vkopitsaнигде не нашла .... Буду очень благадарен.
Так кто же это, мужчина или женщина?


Примерно так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Public Sub Cycle()

Dim tbl As Table, cll As Cell, i As Long
i =  0 

For Each tbl In ThisDocument.Tables
  For Each cll In tbl.Range.Cells
    i = i +  1 
  Next
Next
MsgBox CStr(i)

End Sub
Код обходит все ячейки всех таблиц и пересчитывает их
...
Рейтинг: 0 / 0
12.03.2010, 09:57
    #36515829
vkopitsa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Shocker.Pro,

гг то опечатка.

А как сделать условие, например,
______________________________
|85 | 85 | 85 | 42 | 42 | 42 | - | - | - | - |
-----------------------------------------------------

чтобы находило 6 столбцов в колонке с цифрами, как в примере в файле.


Задача_Пример
...
Рейтинг: 0 / 0
12.03.2010, 12:07
    #36516269
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
vkopitsaчтобы находило 6 столбцов в колонке с цифрами, как в примере в файле.

не очень понял вопрос, но, допустим, так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Public Sub Cycle()

Dim tbl As Table, cll As Cell, i As Long
i =  0 

For Each tbl In ThisDocument.Tables
  For Each cll In tbl.Range.Cells
    If IsNumeric(Replace(cll.Range, Chr( 13 ) + Chr( 7 ), "")) Then i = i +  1  Else i =  0 
    If i =  6  Then
      MsgBox "Ура, нашел 6 числовых ячеек подряд"
      i =  0 
    End If
  Next
Next

End Sub
...
Рейтинг: 0 / 0
12.03.2010, 14:15
    #36516774
vkopitsa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Shocker.Pro,

А к какому ворду макрос? версия, 2002, 2003 неработает.
...
Рейтинг: 0 / 0
12.03.2010, 14:49
    #36516873
vkopitsa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
vkopitsaShocker.Pro,

А к какому ворду макрос? версия, 2002, 2003 неработает.

Всё разобрался. ;)
...
Рейтинг: 0 / 0
12.03.2010, 16:04
    #36517114
vkopitsa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Shocker.Pro,

Понял всё, кроме:

Chr(13) + Chr(7)
...
Рейтинг: 0 / 0
12.03.2010, 16:07
    #36517125
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
vkopitsaПонял всё, кроме:
Chr(13) + Chr(7)

Если это не убирать, IsNumeric не распознает значение как число.
...
Рейтинг: 0 / 0
14.03.2010, 11:32
    #36518962
vkopitsa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Shocker.Pro,

Как сделать чтоб выдиляло в ряд.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
Private Sub CommandButton7_Click()
Dim tbl As Table, cll As Cell, i As Long
i =  0 
b =  0 

For Each tbl In ActiveDocument.Tables
  For Each cll In tbl.Range.Cells
    If IsNumeric(Replace(cll.Range, Chr( 13 ) + Chr( 7 ), "")) Then i = i +  1  Else i =  0 
    If i =  6  Then
      MsgBox "Ура, нашел 6 числовых ячеек подряд"
      
 'tbl.Cell(Row, i - 6).Range.Shading.BackgroundPatternColor = RGB(255, 0, 0)
'  tbl.Cell(Row, i - 5).Range.Shading.BackgroundPatternColor = RGB(255, 0, 0)
'  tbl.Cell(Row, i - 4).Range.Shading.BackgroundPatternColor = RGB(255, 0, 0)
'   tbl.Cell(Row, i - 3).Range.Shading.BackgroundPatternColor = RGB(255, 0, 0)
'    tbl.Cell(Row, i - 2).Range.Shading.BackgroundPatternColor = RGB(255, 0, 0)
'     tbl.Cell(Row, i - 1).Range.Shading.BackgroundPatternColor = RGB(255, 0, 0)
'tbl.Cell(Row, i - 3).Range.Text = Val(tbl.Cell(Row, -6).Range.Text) / Val(2)
'tbl.Cell(Row, i - 2).Range.Text = Val(tbl.Cell(Row, -4).Range.Text) / Val(2)
'cll.Range.Text = Val(tbl.Cell(Row, -3).Range.Text) / Val(2)
'For i = 1 To n + 1

For j =  5  To  8 

tbl.Cell(row, j).Range.Shading.BackgroundPatternColor = RGB( 255 ,  0 ,  0 )
'tbl.Cell(Row, b + 6).Range.Shading.BackgroundPatternColor = RGB(255, 0, 0)
'tbl.Cell(Row, b + 7).Range.Shading.BackgroundPatternColor = RGB(255, 0, 0)
Next j
'Next i
     i =  0 
    End If
  Next
Next
End Sub

http://mydisk.se/vkopitsa/webpage/ряд.JPG
...
Рейтинг: 0 / 0
14.03.2010, 11:41
    #36518972
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
vkopitsa,

Да. пожалуй мой код не годится для случаев с таблицами с объединенными ячейками. Надо работать не со всей таблицей, а со строками таблиц....
...
Рейтинг: 0 / 0
14.03.2010, 11:52
    #36518979
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Хотя нет... вот так должно работать

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
Private Sub CommandButton7_Click()
Dim tbl As Table, cll As Cell, i As Long, BackCell As Cell, j As Long
i =  0 
b =  0 

For Each tbl In ActiveDocument.Tables
  For Each cll In tbl.Range.Cells
    If IsNumeric(Replace(cll.Range, Chr( 13 ) + Chr( 7 ), "")) Then i = i +  1  Else i =  0 
    If i =  6  Then
      'MsgBox "Ура, нашел 6 числовых ячеек подряд"
      Set BackCell = cll
      For j =  1  To  6 
        BackCell.Range.Shading.BackgroundPatternColor = RGB( 255 ,  0 ,  0 )
        If j <>  6  Then Set BackCell = BackCell.Previous
      Next
      i =  0 
    End If
  Next
Next
End Sub


но, то ли у меня чего-то с вордом.... вылетает ошибка "Code execution terminated" в произвольных местах. Попробуйте у себя.
...
Рейтинг: 0 / 0
14.03.2010, 12:19
    #36519009
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Кстати, настоятельно рекомендую пользоваться Option Explicit
...
Рейтинг: 0 / 0
14.03.2010, 14:25
    #36519118
vkopitsa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Shocker.Pro, спасибо за помощь, я тока 3 день в vba ;(

Вот что вышло, а как сделать чтобы округлило до целых? например с 15,5 на 15 ;)


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
Private Sub CommandButton10_Click()
Dim tbl As Table, cll As Cell, i As Long, BackCell As Cell, j As Long
i =  0 
b =  0 

For Each tbl In ActiveDocument.Tables
  For Each cll In tbl.Range.Cells
    If IsNumeric(Replace(cll.Range, Chr( 13 ) + Chr( 7 ), "")) Then i = i +  1  Else i =  0 
    If i =  6  Then
      'MsgBox "Ура, нашел 6 числовых ячеек подряд"
      Set BackCell = cll
      kakaCell = Val(tbl.Cell(row,  5 ).Range.Text)
      Select Case kakaCell      ' Анализирует число.
      Case  2 ,  4 ,  6 ,  8 ,  12 ,  14 ,  16 ,  18 ,  22 ,  24 ,  26 ,  28 ,  32 ,  34 ,  36 ,  38 ,  42 ,  44 ,  46 ,  48         ' Число парное.
                              chislo = Val(tbl.Cell(row,  5 ).Range.Text) + Val( 2 )
                        
                        
                        tbl.Cell(row,  5 ).Range.Text = chislo
                        tbl.Cell(row,  6 ).Range.Text = chislo
                        tbl.Cell(row,  7 ).Range.Text = chislo
                        
                        chislo2 = chislo / Val( 2 )
                        
                        tbl.Cell(row,  8 ).Range.Text = chislo2 'замена 8 ячейки
                        tbl.Cell(row,  9 ).Range.Text = chislo2 'замена 9 ячейки
                        tbl.Cell(row,  10 ).Range.Text = chislo2 'замена 10 ячейки
      
                For j =  1  To  6 
                BackCell.Range.Shading.BackgroundPatternColor = RGB( 255 ,  0 ,  0 )
                If j <>  6  Then Set BackCell = BackCell.Previous
                Next
            Case  5 ,  10 ,  15 ,  20 ,  25 ,  30 ,  35 ,  40 ,  45 ,  50 ,  55 ,  60 ,  65 ,  70 ,  75 ,  80 ,  85 ,  90 ,  95  ' Число до 95.
            
            chislo3 = Val(tbl.Cell(row,  5 ).Range.Text) + Val( 5 )
                        tbl.Cell(row,  5 ).Range.Text = chislo3
                        tbl.Cell(row,  6 ).Range.Text = chislo3
                        tbl.Cell(row,  7 ).Range.Text = chislo3
      chislo4 = chislo3 / Val( 2 )
                        tbl.Cell(row,  8 ).Range.Text = chislo4 'замена 8 ячейки
                        tbl.Cell(row,  9 ).Range.Text = chislo4 'замена 9 ячейки
                        tbl.Cell(row,  10 ).Range.Text = chislo4 'замена 10 ячейки
      
         'tbl.Cell(row, 8).Range.Text = Val(tbl.Cell(row, 5).Range.Text) / Val(2) 'замена 8 ячейки
         'tbl.Cell(row, 9).Range.Text = Val(tbl.Cell(row, 5).Range.Text) / Val(2) 'замена 9 ячейки
         'tbl.Cell(row, 10).Range.Text = Val(tbl.Cell(row, 5).Range.Text) / Val(2) 'замена 10 ячейки
         
      For j =  1  To  6 
        BackCell.Range.Shading.BackgroundPatternColor = RGB( 255 ,  0 ,  0 )
        If j <>  6  Then Set BackCell = BackCell.Previous
      Next
Case  100 ,  110 ,  120 ,  130 ,  140 ,  150 ,  160 ,  170 ,  180 ,  190 ,  210 ,  220 ,  230 ,  240 ,  250 ,  260 ,  270 ,  280 ,  290  ' Число до 290
      
          chislo5 = Val(tbl.Cell(row,  5 ).Range.Text) + Val( 10 )
                        tbl.Cell(row,  5 ).Range.Text = chislo5
                        tbl.Cell(row,  6 ).Range.Text = chislo5
                        tbl.Cell(row,  7 ).Range.Text = chislo5
      chislo6 = chislo5 / Val( 2 )
                        tbl.Cell(row,  8 ).Range.Text = chislo6 'замена 8 ячейки
                        tbl.Cell(row,  9 ).Range.Text = chislo6 'замена 9 ячейки
                        tbl.Cell(row,  10 ).Range.Text = chislo6 'замена 10 ячейки
                          
                          For j =  1  To  6 
        BackCell.Range.Shading.BackgroundPatternColor = RGB( 255 ,  0 ,  0 )
        If j <>  6  Then Set BackCell = BackCell.Previous
      Next


      Case Else       ' Другие значения нечо не выполнять.
    
End Select
      
         i =  0 
         End If
    
    
  
  Next
Next
   
      
End Sub
...
Рейтинг: 0 / 0
14.03.2010, 14:36
    #36519130
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
vkopitsaа как сделать чтобы округлило до целых? например с 15,5 на 15 ;)

Округление - Round
Отброс дробной части - Fix
определитесь, что вам подходит.

В суть работы программы вникать не стал, так как вы не вняли моему совету отформатировать программу, чтобы она читалась.
Но дам еще один совет:
Case 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95
конечно работать будет, а если у вас диапазон будет больше раз эдак в тысячу - тоже будете все числа перечислять?

Вот выражение, которое проверяет на соответствие одному из этих чисел
Код: plaintext
i>= 5  And i<= 95  And (i Mod  5 )= 0 
...
Рейтинг: 0 / 0
14.03.2010, 14:51
    #36519143
vkopitsa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Shocker.Pro,

авторВ суть работы программы вникать не стал, так как вы не вняли моему совету отформатировать программу, чтобы она читалась.

А как ето сделать? я не знаю просто как. Может статьи есть какие-то.
...
Рейтинг: 0 / 0
14.03.2010, 15:03
    #36519164
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
vkopitsa А как ето сделать? я не знаю просто как. Может статьи есть какие-то.


Ой. я виноват, спутал с другим топиком , простите. :)

Смысл в том, чтобы If и соответствующий ему End If были на одном уровне отступа. То же для For и Next, для Select и End Select и т.п. Все команды одного уровня должны быть с одинаковым отступом. Все команды между If и End if (For/Next и т.п.) должны быть чуть глубже.

Посмотрите по ссылке, как я переформатировал пример.

Просто без форматирования очень тяжело уловить логику чужой программы. Вы-то может в ней и ориентируетесь, но когда напишете тыщи две-три строк - тоже перестанете
...
Рейтинг: 0 / 0
14.03.2010, 15:24
    #36519196
vkopitsa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Shocker.Pro,

Вот. А как выражение i>=5 And i<=95 And (i Mod 5)=0 вставить.

ставил Case i>=5 And i<=95 And (i Mod 5)=0 . Неработает.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
Private Sub CommandButton10_Click()
Dim tbl As Table, cll As Cell, i As Long, BackCell As Cell, j As Long
i =  0 
b =  0 

For Each tbl In ActiveDocument.Tables
  For Each cll In tbl.Range.Cells
    If IsNumeric(Replace(cll.Range, Chr( 13 ) + Chr( 7 ), "")) Then i = i +  1  Else i =  0 
    If i =  6  Then
      'MsgBox "Ура, нашел 6 числовых ячеек подряд"
      Set BackCell = cll
      kakaCell = Val(tbl.Cell(row,  5 ).Range.Text)
        Select Case kakaCell      ' Анализирует число.
            Case  2 ,  4 ,  6 ,  8 ,  12 ,  14 ,  16 ,  18 ,  22 ,  24 ,  26 ,  28 ,  32 ,  34 ,  36 ,  38 ,  42 ,  44 ,  46 ,  48         ' Число парное.
            
                        chislo = Val(tbl.Cell(row,  5 ).Range.Text) + Val( 2 )
                        
                        tbl.Cell(row,  5 ).Range.Text = chislo
                        tbl.Cell(row,  6 ).Range.Text = chislo
                        tbl.Cell(row,  7 ).Range.Text = chislo
                        
                        chislo2 = chislo / Val( 2 )
                        chislo22 = Fix(chislo2)
                        
                        tbl.Cell(row,  8 ).Range.Text = chislo22 'замена 8 ячейки
                        tbl.Cell(row,  9 ).Range.Text = chislo22 'замена 9 ячейки
                        tbl.Cell(row,  10 ).Range.Text = chislo22 'замена 10 ячейки
      
                            For j =  1  To  6 
                            BackCell.Range.Shading.BackgroundPatternColor = RGB( 255 ,  0 ,  0 )
                            If j <>  6  Then Set BackCell = BackCell.Previous
                            Next
                            
            Case  5 ,  10 ,  15 ,  20 ,  25 ,  30 ,  35 ,  40 ,  45 ,  50 ,  55 ,  60 ,  65 ,  70 ,  75 ,  80 ,  85 ,  90 ,  95  ' Число до 100 парное.
            
                        chislo3 = Val(tbl.Cell(row,  5 ).Range.Text) + Val( 5 )
            
                        tbl.Cell(row,  5 ).Range.Text = chislo3
                        tbl.Cell(row,  6 ).Range.Text = chislo3
                        tbl.Cell(row,  7 ).Range.Text = chislo3
                        
                        chislo4 = chislo3 / Val( 2 )
                        chislo44 = Fix(chislo4)
                        
                        tbl.Cell(row,  8 ).Range.Text = chislo44 'замена 8 ячейки
                        tbl.Cell(row,  9 ).Range.Text = chislo44 'замена 9 ячейки
                        tbl.Cell(row,  10 ).Range.Text = chislo44 'замена 10 ячейки
      
         'tbl.Cell(row, 8).Range.Text = Val(tbl.Cell(row, 5).Range.Text) / Val(2) 'замена 8 ячейки
         'tbl.Cell(row, 9).Range.Text = Val(tbl.Cell(row, 5).Range.Text) / Val(2) 'замена 9 ячейки
         'tbl.Cell(row, 10).Range.Text = Val(tbl.Cell(row, 5).Range.Text) / Val(2) 'замена 10 ячейки
         
                            For j =  1  To  6 
                              BackCell.Range.Shading.BackgroundPatternColor = RGB( 255 ,  0 ,  0 )
                              If j <>  6  Then Set BackCell = BackCell.Previous
                            Next
            Case  100 ,  110 ,  120 ,  130 ,  140 ,  150 ,  160 ,  170 ,  180 ,  190 ,  210 ,  220 ,  230 ,  240 ,  250 ,  260 ,  270 ,  280 ,  290  ' Число до 300 парное.
      
                        chislo5 = Val(tbl.Cell(row,  5 ).Range.Text) + Val( 10 )
          
                        tbl.Cell(row,  5 ).Range.Text = chislo5
                        tbl.Cell(row,  6 ).Range.Text = chislo5
                        tbl.Cell(row,  7 ).Range.Text = chislo5
                        
                        chislo6 = chislo5 / Val( 2 )
      
                        tbl.Cell(row,  8 ).Range.Text = chislo6 'замена 8 ячейки
                        tbl.Cell(row,  9 ).Range.Text = chislo6 'замена 9 ячейки
                        tbl.Cell(row,  10 ).Range.Text = chislo6 'замена 10 ячейки
                          
                            For j =  1  To  6 
                                BackCell.Range.Shading.BackgroundPatternColor = RGB( 255 ,  0 ,  0 )
                                If j <>  6  Then Set BackCell = BackCell.Previous
                            Next


            Case Else       ' Другие значения нечо не выполнять.
    
        End Select
      
         i =  0 
    End If
  Next
Next
     
End Sub
...
Рейтинг: 0 / 0
14.03.2010, 15:41
    #36519217
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
По форматированию - вот так гораздо яснее.
в качестве буквоедства:
строки
kakaCell = Val(tbl.Cell(row, 5).Range.Text)
и
Select Case kakaCell
должны быть на одном уровне, так как Select не вложен в "kakaCell =..." (не подчиняется ему), обе команды выполняются последовательно на одном уровне. То же касается циклов "For j = 1 To 6" - кстати, зачем они, вроде их результат нигде не используется?

vkopitsaВот. А как выражение i>=5 And i<=95 And (i Mod 5)=0 вставить.
ставил Case i>=5 And i<=95 And (i Mod 5)=0 . Неработает.

Код: plaintext
If i>= 5  And i<= 95  And (i Mod  5 )= 0  Then


Программу проанализировать не смог, пока неясно, откуда вы берете row

Еще вопрос, для чего нужно Val(2) (почему не просто 2)?
...
Рейтинг: 0 / 0
14.03.2010, 16:20
    #36519263
vkopitsa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Shocker.Pro,

вот отсюда выдрал row, я думал row ето типа столбец де находица выделение.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Sub Таблица()
For Row =  1  To  10 
    ActiveDocument.Tables( 1 ).Cell(Row,  1 ).Select
    With Selection.Find
        .Text = "   "
        .Execute
    End With
    If Selection.Find.Found = True Then

    'Тут находится код, который не могу написать

    ActiveDocument.Tables( 1 ).Cell(Row,  2 ).Range.Text = Trim(ВырезанныйТекст)
    End If
Next Row
End Sub

А как сделать чтобы находило такой рядок,

http://mydisk.se/vkopitsa/webpage/данные.JPG


Табличка
...
Рейтинг: 0 / 0
14.03.2010, 16:25
    #36519269
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
vkopitsaя думал

это потому, что вы-таки проигнорировали мой совет.

Напишите в начале каждого своего модуля
Код: plaintext
Option Explicit
...
Рейтинг: 0 / 0
14.03.2010, 16:27
    #36519275
vkopitsa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Shocker.Pro,

ок
...
Рейтинг: 0 / 0
14.03.2010, 16:29
    #36519277
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
vkopitsaА как сделать чтобы находило такой рядок

а вы словами опишите, чем характеризуется в вашем понимании слово "такой"
...
Рейтинг: 0 / 0
14.03.2010, 16:36
    #36519289
vkopitsa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
пересчет данных в таблице word по примеру.
Shocker.Pro,

Рядок в котором было 3 числовых ячеек, между первой и второй 2 ячейки не числовых, и между второй и третей.

А что мене теперь с row тим делать? задать row = 1 или 0.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / пересчет данных в таблице word по примеру. / 25 сообщений из 61, страница 1 из 3
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]