Pelena, Здравствуйте! Это вот то, что позволяет через ссылки на объявленные переменные сократить написание и обратится к чему-то. Где-то так понимаю... [vba]
Код
Set ShSales = ThisWorkbook.Worksheets("log_book") ‘лист Set SalesListObj = ShSales.ListObjects("tabl_logbook") ‘динамическая таблица Set SalesListRow = SalesListObj.ListRows.Add ‘строка динам. таблицы
[/vba] А это то, что позволяет используя обращения, например изменить цвет текста в каждой ячейке строки по отдельности [vba]
[/vba] А если учесть то, что цвет меняется на четыре позиции по условию в 12 ячейках строки, то у меня складывается код из 48 строк, отсюда и задался вопрос как это чередование прописать одной строкой. В данном случае предложенный Вами пример если дописать так, то выдает ошибку [vba]
Код
SalesListRow.Cells(1, 1).Resize(12).Interior.Pattern = xlNone ‘снять заливку SalesListRow.Cells(1, 1).Resize(12).Font.Color = vbRed ‘установить цвет текста красный
[/vba]
Pelena, Здравствуйте! Это вот то, что позволяет через ссылки на объявленные переменные сократить написание и обратится к чему-то. Где-то так понимаю... [vba]
Код
Set ShSales = ThisWorkbook.Worksheets("log_book") ‘лист Set SalesListObj = ShSales.ListObjects("tabl_logbook") ‘динамическая таблица Set SalesListRow = SalesListObj.ListRows.Add ‘строка динам. таблицы
[/vba] А это то, что позволяет используя обращения, например изменить цвет текста в каждой ячейке строки по отдельности [vba]
[/vba] А если учесть то, что цвет меняется на четыре позиции по условию в 12 ячейках строки, то у меня складывается код из 48 строк, отсюда и задался вопрос как это чередование прописать одной строкой. В данном случае предложенный Вами пример если дописать так, то выдает ошибку [vba]
Код
SalesListRow.Cells(1, 1).Resize(12).Interior.Pattern = xlNone ‘снять заливку SalesListRow.Cells(1, 1).Resize(12).Font.Color = vbRed ‘установить цвет текста красный
А если просто SalesListRow.Range.Font.Color = vbRed
Елена, срабатывает, как и положено на последнюю строку изначально вставленных данных, не ясно то, как определяется последняя строка для формата данных если нет координат для последней строки, кроме range…
А если просто SalesListRow.Range.Font.Color = vbRed
Елена, срабатывает, как и положено на последнюю строку изначально вставленных данных, не ясно то, как определяется последняя строка для формата данных если нет координат для последней строки, кроме range…Сергей13
Сообщение отредактировал Сергей13 - Воскресенье, 07.04.2019, 12:17
Pelena, Я уже неделю канителюсь с этим, вписывая по полста строк кода с условиями для одной строки, при этом понимая, что это некий штопор… Благодарю Вас, Вы вывели меня из штопора.
Pelena, Я уже неделю канителюсь с этим, вписывая по полста строк кода с условиями для одной строки, при этом понимая, что это некий штопор… Благодарю Вас, Вы вывели меня из штопора.Сергей13
Насколько я помню, метод .Add без указания номера строки добавляет строку именно в конец таблицы, поэтому, обращаясь к переменной SalesListRow, Вы обращаетесь к последней строке
Насколько я помню, метод .Add без указания номера строки добавляет строку именно в конец таблицы, поэтому, обращаясь к переменной SalesListRow, Вы обращаетесь к последней строкеPelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816
Pelena, Да идет добавление строки с последующей вставкой данных в эту добавленную строку. Но если он добавляет строку, то по идеи при заливке или изменения цвета шрифта в добавленной строке, используя туже переменную уже для формата строки, должно произойти новое добавление строки… Или нет?
Pelena, Да идет добавление строки с последующей вставкой данных в эту добавленную строку. Но если он добавляет строку, то по идеи при заливке или изменения цвета шрифта в добавленной строке, используя туже переменную уже для формата строки, должно произойти новое добавление строки… Или нет?Сергей13