подзаголовки листа Excel в виде столбцов - PullRequest
1 голос
/ 03 июня 2011

Я совершенно новичок в подобных задачах и не уверен, что что-либо доступно (не уверен, даже по какой базе я должен искать)

На приведенном ниже листе Excel столбец «А» имеет заголовки вдва места (ряды номеров 2,3 и 9,10).Фактический лист Excel содержит более шести тысяч строк и слишком много таких подзаголовков (если это небольшой файл, я могу сделать это вручную ... но более 6 тысяч строк)

Задача: - Я хочузаполнить столбец E значением «Make», а столбец F - «Model» из подзаголовков.Могу ли я написать какое-либо правило или макрос для заполнения этих столбцов?кто-нибудь может мне помочь?Спасибо за вашу помощь

Ссылка на изображение

или ниже

enter image description here

enter image description here

С уважением

Киран

1 Ответ

1 голос
/ 03 июня 2011

Если вы хотите сделать это исключительно в Excel, вы можете использовать следующее. Это предполагает

  1. Все заголовки одинаковы для "S.No"
  2. Измените предложение SUBSTITUTE, чтобы оно соответствовало тексту для марки и модели, например, я использовал точное расстояние между "Model: " и "Make : ", чтобы соответствовать таблице и заменил на ""

В ячейку G5 введите =IF(ISNUMBER(A5),IF(ISERROR(FIND("Model",A3,1)),MAX($G$1:G4),MAX($G$1:G4)+1),"")

В ячейку F5 введите =SUBSTITUTE(IF(ISNUMBER(A5),INDIRECT(ADDRESS(MATCH($G5,$G:$G,0)-2,COLUMN(A1),1)),""),"Model: ","")

В ячейку E5 введите = =SUBSTITUTE(IF(ISNUMBER(A5),INDIRECT(ADDRESS(MATCH($G5,$G:$G,0)-3,COLUMN(A1),1)),""),"Make : ","")

Затем перетащите формулу в E5: G5 туда, куда вам нужно. Тем не менее, я рекомендую использовать это только один раз, так как формулы будут медленно обновляться в больших диапазонах. Также, если ваши заголовки не синхронизированы, тогда VBA - путь вперед

enter image description here

...