Проблема с копированием данных в рабочую книгу с макросами - PullRequest
0 голосов
/ 21 октября 2019

Я написал макросы для листа Excel для проекта, над которым я работаю на работе. Эти листы Excel содержат пользовательские формы и довольно много макросов.

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

Однако, когда я копирую и вставляю данные из листа моих коллег в этот шаблон, макросы не работают. Я не получаю никаких сообщений об ошибках, однако написанные мной макросы просто не работают. Вступление в VBE и запуск макросов, похоже, тоже не решают проблему. Например, в этом коде я хочу, чтобы в диапазоне от B21 до B31 листа sheet2 число строк было подсчитано на основе того, что находится в столбце A, если тот же текст находится в столбце A листа 3 и если высокий содержится в столбце Dof sheet3 и т. д .:

Const srow As Byte = 6  'for sheet3
Dim lrow As Long 'last row of sheet3
Dim x As Long 'Counter for sheet2
Const StartRow As Byte = 21 'For sheet2
Const LastRow As Byte = 31 'For sheet2
lrow = Sheet3.Cells(Rows.Count, "A").End(xlUp).Row

For x = StartRow To LastRow

Sheet2.Range("B" & x).FormulaR1C1 = Application.WorksheetFunction.CountIfs(Sheet3.Range("A" & srow, "A" & lrow), Sheet2.Range("A" & x), Sheet3.Range("D" & srow, "D" & lrow), "High") 'High
Sheet2.Range("C" & x).FormulaR1C1 = Application.WorksheetFunction.CountIfs(Sheet3.Range("A" & srow, "A" & lrow), Sheet2.Range("A" & x), Sheet3.Range("D" & srow, "D" & lrow), "Low") 'Low

Sheet2.Range("H" & x).FormulaR1C1 = Application.WorksheetFunction.CountIfs(Sheet3.Range("A" & srow, "A" & lrow), Sheet2.Range("A" & x), Sheet3.Range("J" & srow, "J" & lrow), "yes") 'Single source is yes

 Sheet2.Range("L" & x).FormulaR1C1 = Application.WorksheetFunction.CountIfs(Sheet3.Range("A" & srow, "A" & lrow), Sheet2.Range("A" & x), Sheet3.Range("C" & srow, "C" & lrow), "Closed") 'Status is closed

Next x

Например, для приведенного выше кода я не получаю правильное количество строк для индикаторов, оно показывает 3, в то время как есть 5 строк, которые должны были быть подсчитаны. Хотя он считает это правильно в моем собственном файле Excel, где изначально были написаны макросы.

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

И ручное ввод информации из всех проектов в созданный мной шаблон будет слишком трудоемким.

Спасибо за ответ вавансовый.

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