Я работаю с двумя рабочими тетрадями, обе с разными листами.Код написан для Рабочей книги под названием «Rober.xslm», и в следующем макросе я открываю другую рабочую книгу («Formato permisos.xlsm») и считываю значения в некоторых листах, чтобы работать с ними в моей исходной рабочей книге.Сначала мне удалось прочесть значения из листа «Requisitos contensor + ATI» в рабочей книге «Formato permisos.xlsm», а затем поработать с ними на моем листе «Seleccion_ECs» из «Rober.xlsm».
Проблема возникает, когда я выбираю, активирую или открываю лист «ECs full» из рабочей книги «Rober.xlsm».Я не понимаю, почему это утверждение: Set shECF = wbDest.Worksheets ("ECs full") ничего не возвращает, если у меня тоже есть это: Set shrelacion = wbDest.Worksheets ("Relación ciclo y fechas"), и это работает с ним!Название ECs полное хорошо написано.Это обычный лист, а не таблица.
Set wbSource = Workbooks.Open(sFileName)
Debug.Print (wbSource.Name) '"Formato permisos.xlsm"
If Err.Number <> 0 Then Debug.Print ("Error number en Libro gráficas: " & Err.Number)
If Err.Number = 0 Then Debug.Print ("No ha habido error en libro gráficas")
Set Requisitos = wbSource.Worksheets("Requisitos Contenedor + ATI")
Set QvsE = Workbooks.Open(sFileName) 'wbSource.Charts("Curva - QvsE")
Set wbDest = ThisWorkbook 'Workbooks("Rober.xlsm")
Debug.Print (wbDest.Name) '"Rober.xlsm"
If Err.Number <> 0 Then Debug.Print ("Error number en Libro Rober: " & Err.Number)
Set shEC = wbDest.Worksheets("Seleccion_ECs")
If Err.Number <> 0 Then Debug.Print ("Error number en hoja Seleccion_ECs: " & Err.Number)
im fechaActual As Variant, fechaEOC As Date
Dim shECF As Worksheets, rangoECF As Range
Dim nFilasECF As Double, nColumECF As Double, años As Double
Set shECF = wbDest.Worksheets("ECs full")
'wbDest.Sheets("ECs_full").Activate --These are some thigs I tried
'wbDest.Sheets("ECs_full").Select
If Err.Number <> 0 Then Debug.Print ("Error al seleccionar hoja ECs full: " & Err.Number)
MsgBox ThisWorkbook.Path & vbNewLine & ThisWorkbook.Name 'Archivo Rober
Set rangoECF = Sheets("ECs full").UsedRange
nFilasECF = rangoECF.Rows.Count
nColumECF = rangoECF.Columns.Count
Set shrelacion = wbDest.Worksheets("Relación ciclo y fechas")
For g = 1 To nColumECF
If shECF.Cells(1, g) = "último ciclo de operación" Then
C = shECF.Cells(1, g).Column 'Don't manage to get this value since I can't read the sheet "ECs full"
End If
Next g