Я написал макросы для листа 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 просто не читает слова /цифры / буквы в клетках. Если у кого-то был подобный опыт, я был бы очень признателен за ответ.
И ручное ввод информации из всех проектов в созданный мной шаблон будет слишком трудоемким.
Спасибо за ответ вавансовый.