Как вставить столбцы отдельно - PullRequest
0 голосов
/ 03 октября 2018

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

ошибка 1004,

, и я не нашел никого, кто имелТочная настройка как у меня.

Из того, что я видел, большинство людей вставляют диапазон столбцов: .Range("H:Q") Мне нужно вставить отдельные столбцы: .Range(H:H,K:K,N:N,Q:Q)

Что я делаюне так?

Option Explicit

Sub Insert_Multiple_Columns()
    Dim FIFA As Workbook
    Set FIFA = ActiveWorkbook

    'Ingredient_Forecast_Summary is the sheet name.
    Worksheets("Ingredient_Forecast_Summary").Range("H:H,K:K,N:N,Q:Q").EntireColumn.Insert
End Sub

1 Ответ

0 голосов
/ 03 октября 2018

Отлично на данный момент

Что имел в виду Jeeped, вы должны сделать что-то подобное со своим кодом:

Option Explicit
Sub Insert_Multiple_Columns()

  Dim wbFIFA As Workbook
  Dim wsIFS As Worksheet

  Set wbFIFA = ActiveWorkbook
  Set wsIFS = wbFIFA.Worksheets("Ingredient_Forecast_Summary")
  'Remarks
  '  Now you can use wsIFS instead of:
  '    ActiveWorkbook.Worksheets ("Ingredient_Forecast_Summary")
  '    wbFIFA.Worksheets ("Ingredient_Forecast_Summary")

  wsIFS.Range("H:H,K:K,N:N,Q:Q").EntireColumn.Insert
  'Remarks
  '  The previous line has actually inserted the columns from the right to the
  '  left i.e.
  '  H:H gives you the H column
  '  K:K gives you the L column
  '  N:N gives you the P column
  '  Q:Q gives you the T column

End Sub

Я создал ваш сценарий на своем компьютере, и оба кода работали просто отлично.

Позже

Когда я умышленно неправильно написал имя вашей рабочей таблицы, появилось сообщение об ошибке: «Нижний индекс вне диапазона (Ошибка 9)».

Когда я открыл другую рабочую книгу,затем стал ActiveWorkbook и запустил подпрограмму, снова появилось сообщение об ошибке «Subscript out of range (Ошибка 9)».

Затем я изменил атрибуты рабочей книги только для чтения (глупая идея), но все жетолько мог получить «Ошибка 9».

А потом я наткнулся на сценарий, который дал мне вашу «ошибку 1004», а именно, я защитил лист, и когда я запускал код, вы знаете, что произошло.

Я надеюсь, что это причина вашего горя.Если нет, то по крайней мере некоторые возможные причины были устранены.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...