Подскажите пожалуйства как в Word
Модератор: Naeel Maqsudov
Подскажите пожалуйства как в Wordе, в таблице в выделенном диапазоне вставить один знак(слово)
-
- Сообщения: 375
- Зарегистрирован: 31 авг 2007, 03:06
lebmax, а чем макрорекордер не устраивает?
вот, им записалось (вставляется символ "—"):
вот, им записалось (вставляется символ "—"):
Код: Выделить всё
Selection.TypeText Text:="—"
- Aent
- Сообщения: 1129
- Зарегистрирован: 01 окт 2006, 14:52
- Откуда: Saratov,Russia
- Контактная информация:
Вопрос: Мне надо работать с одним выделенным столбцом, на пример округлить, как бы это сделать
Ответ:Пройтись в цикле по ячейкам ...http://forum.developing.ru/showpost.php ... ostcount=8
Ответ:Пройтись в цикле по ячейкам ...http://forum.developing.ru/showpost.php ... ostcount=8
Dim C as Cell
For Each C in Selection.Range.Cells
' делаем что надо в C.Range
next C
For Each C in Selection.Range.Cells
' делаем что надо в C.Range
next C
- Aent
- Сообщения: 1129
- Зарегистрирован: 01 окт 2006, 14:52
- Откуда: Saratov,Russia
- Контактная информация:
А выбрать колонку можно например так:
Код: Выделить всё
'Выбираем 3-ю колонку второй таблицы
ActiveDocument.Tables(2).Columns(3).Select
Андрей Энтелис,
aentelis.livejournal.com
aentelis.livejournal.com
- Aent
- Сообщения: 1129
- Зарегистрирован: 01 окт 2006, 14:52
- Откуда: Saratov,Russia
- Контактная информация:
Для получения округлённого значения столбца слева можно поместить в каждую ячейку столбца справа от данных следующий код поля WORD
{=ROUND(SUM(LEFT);1)}
Это округление до одного знака поле запятой
Естесвенно, что после изменения данных вычисляемые поля надо обновлять
{=ROUND(SUM(LEFT);1)}
Это округление до одного знака поле запятой
Естесвенно, что после изменения данных вычисляемые поля надо обновлять
Андрей Энтелис,
aentelis.livejournal.com
aentelis.livejournal.com
- Aent
- Сообщения: 1129
- Зарегистрирован: 01 окт 2006, 14:52
- Откуда: Saratov,Russia
- Контактная информация:
Код: Выделить всё
Public Sub ОкруглениеТретьегоСтобцаПервойТаблицы()
Dim i As Long
Dim s As String
With ActiveDocument.Tables(1)
'Предполагаем что в первой строчке таблицы заголовок
For i = 2 To .Rows.Count
s = .Cell(i, 3).Range.Text 'берём текст из ячейки
s = Trim$(Replace(s, Chr(7), vbNullString)) ' убираем хвост ячейки и лишние пробелы
s = Replace(s,Chr(13),vbNullString)
s = Replace(s, ".", Format(0, "#.#")) 'нормализуем национальный десятичный разделитель
s = Format$(Round(CSng(s), 1), "0.#") 'конвертируем в Signed, округляем и конвертируем в строку
.Cell(i, 3).Range.Text = s 'изменяем значение ячейки
Next i
End With
End Sub
Андрей Энтелис,
aentelis.livejournal.com
aentelis.livejournal.com