Так что я работаю над инструментом отчетности в Access. Он запрашивает локальные таблицы и создает документ Excel (через VBA) и создает файл Excel.чередующиеся цвета строк/цифры в Excel - VBA
Я использую следующий код, чтобы цвет альтернативный код и он прекрасно работает
For a = 1 To rs.RecordCount
With ExcelSheet
.Cells(a + 1, 1) = a
.Cells(a + 1, 1).EntireRow.Interior.ColorIndex = IIf((a + 1) Mod 2 = 0, 2, 15)
End With
Next
Примечание я должен сделать a + 1
, потому что а = 1 это название строки, и это название строки.
Примечание: .Cells(a + 1, 1) = 1
номера строки (1, 2, 3, ...)
Примечание: IIf((a + 1) Mod 2 = 0, 2, 15)
2-и 15 представляют собой цветовые коды.
Теперь мой вопрос в том, что когда кто-то получает отчет Excel, они могут удалить строку или выполнить операцию сортировки или что-то еще, и когда они это сделают, это испортит строки.
например:
1 white row
2 grey row
3 white row
4 grey row
если я-то их я получаю
3 white row
1 white row
2 grey row
4 grey row
, который не то, что я хочу, я хочу, чтобы сохранить форматирование и нумерацию Любой выполнить это с помощью VBA в доступе?
Tech: Офис 2007
Как я вручную ввести в номер строки? Как насчет столбца номера? Я не хочу 1, 2, 3 до 2, 3, 1, когда строки сортируются. – masfenix
@edit, это предназначалось для кого-то, кто прокомментировал, но удалил там комментарий. Я отправлюсь сюда для справки. Я думаю, что, возможно, вы ошибались. Этот код находится в Access, я создаю документ, все форматирование, данные выполняются через VBA on Access. Затем я просто вызываю ExcelObject.save, чтобы сохранить файл. Если я их номер из Access DBA, это нормально, но пользователь может открыть лист Excel и упорядочить строки.Тогда, поскольку в Excel нет макроса, он испортит нумерацию строк. – masfenix
Пользователи не очень разбираются в Excel. Они просто хотят сортировать и печатать. Ни один из них не знает ни одной строки кода. – masfenix