Транспонирование таблицы

Автор: | 19.03.2014

В результате очередного мониторинга определения степени заполнения разделов сайтов ОУ района была создана таблица Сбор.

Именно в таком виде эта таблица была выложена в ресурсе Google для общего использования.

Собранные от ОУ данные из листа Сбор  мы потом просто скопировали и вставили в таблицу EXCEL на Google.

Но это данные, представленные самими ОУ. Необходимо их проверить на истинность. Не секрет, что можно просто отписаться, заполнив значения приблизительно, а потом сослаться, что ошиблись, чтобы потом позже исправить значения на верные или подогнать их к нужному результату.

Девиз:,-“Доверяй, но проверяй”, никто пока не отменял. Заполненные ОУ сведения по заполнению ими разделов своего сайта на портале Edumsko.ru надо проверить.

 

Если распечатывать таблицу в том виде, как она есть,  то распечатка будет очень  неудобной для анализа и проверки.

Надо перевернуть, вернее транспонировать таблицу, сделав шапку слева. Перед транспонированием и после транспонирования необходимо убрать видимые ошибки, пустые строки и столбцы.

Перевернуть таблицу легко посредством использования массива. А всякие ошибки проще исправлять постепенной проверкой таблицы на эти ошибки и записью макроса в момент выполнения преобразований.

Что в итоге и сделано.

Главный макрос написан, а остальные созданы через меню Сервис-Макрос-Начать запись.

Записанный код можно всегда подправить, добавить или оптимизировать.

 

Во время работы над программой мне захотелось попытаться и сохранить все форматы ячеек перед транспонированием. Поэтому я начал поиски наиболее простого способа сделать такую работу. Одним из таким методов форматирования является Условное форматирование.

 

Привожу пример простого макроса, найденного на одном из форумов по Условному форматированию и поиску отличных на 2-х листах значений ячеек с одинаковыми относительными адресами.

 

Это в какой-то мере шедевр лаконичности, но и сложности понимания работы.

Надо отдельно заниматься темой Условного форматирования, чтобы понять все нюансы его применения с помощью кода VBA.

 

Sub SetFormatCondition()

Dim strFormula As String

 

On Error Resume Next

With Worksheets(“Лист1”)

.Names(“FormatCondition”).Delete

.Names.Add Name:=”FormatCondition”, RefersToR1C1:=”=(Лист2!RC<>Лист1!RC)”

On Error GoTo 0

With .UsedRange

.FormatConditions.Delete

.FormatConditions.Add Type:=xlExpression, Formula1:=”=FormatCondition”

.FormatConditions(1).Interior.ColorIndex = 4

End With

End With

End Sub

Ссылка на файл по транспонированию и преобразованию для печати таблицы Сбор

What are you working on?