A ver, para no estar adivinando o caminando a ciegas por el problema, vamos a ir a lo seguro:
1º: Indicas en la columna B: "Aquí iría la fórmula". Bien, pues te sugiero que introduzcas a mano, en B3:B10 cuáles son los resultados que esperas en cada celda, y expliques cómo y/o por qué se llega a ellos.
2º: Aclara un poco esos significados de 'Factor común 1' y 'Variable por pesos o centavos', para entender cómo juegan en las diferentes resoluciones.
3º: También sería interesante saber cómo interpretar eso de 'ojito al tema porque estos importes entre archivos pueden variar entre el 10% mayor o menor al importe pago'. Para verlo claro, introduce algún ejemplo que fuerce esa diferencia y explica cómo hay que contemplarlo y en qué interfiere para la/s fórmula/s de la columna B.
4º: Y por último, elimina (suprime) todos los datos innecesarios para componer el resultado que buscamos: por ejemplo, ese 'Íd. crédito' de la columna A, ¿aporta algo? ¿No? Pues bórralo. Ídem de lo mismo para 'Nombre' (si no se necesita, bórralo también). Veo que las columnas L y N tienen los mismos contenidos. ¿Por qué no eliminamos una de ellas?
Todo lo que sea limpiar la pizarra de garabatos innecesarios, será bienvenido y agradecido.
Saludos,
Por
Victor7, · publicado
Buenas gente, esot y programando una macro la cual al llegar a la sentencia :
Cells(2, columna).Activate
me tira: se ha producido el error 1004 en tiempo de ejecucion: error definido por la aplicacion o el objeto
me seria de gran ayuda si identifican la causa del mismos. el codigo completo es el siguiente:
Dim f As String
Dim contadorhija As String
copiado = 0
columna = 3
contadorpadre = 3
Windows("Herramienta Patricio.xlsm").Activate
Cells(3, 1).Select
'ciclo recorredor de padres
Do Until IsEmpty(ActiveCell.Value)
ref = ActiveCell
Set Fso = CreateObject("Scripting.FileSystemObject")
'suspende macro se falta una estructura
If Not (Fso.FileExists("G:\VLS-Industrial\Logistica\PReid\Consumo MP sem siguiente\Estructuras\" & ref & ".xls")) Then
MsgBox "La estructura de la referencia " & ref & " no fue bajada de sap, descarguela, y vuelva a correr la macro"
Exit Sub
End If
'abre estructura
Workbooks.Open Filename:= _
"G:\VLS-Industrial\Logistica\PReid\Consumo MP sem siguiente\Estructuras\" & ref & ".xls"
Windows(ref & ".xls").Activate
Range("E11").Activate
contadorhija = 11
columna = 3
'recorro estructura y va armandola en el hoja de excel, selecciona ref hija y comprueba
Do Until IsEmpty(ActiveCell.Value)
Windows(ref & ".xls").Activate
Cells(contadorhija, 5).Activate
refhhija = ActiveCell
'Comprueba si existe ref hija en tabla
Windows("Herramienta Patricio.xlsm").Activate
Cells(2, columna).Activate
Do Until IsEmpty(ActiveCell.Value) Or copiado = 1
'Comprueba si existe ref hija en tabla
If refhija = ActiveCell Then
Windows(ref & ".xls").Activate
ActiveCell.Offset(0, 4).Activate
Selection.Copy
Windows("Herramienta Patricio.xlsm").Activate
Cells("contadorpadre", columna + 1).Select
ActiveSheet.Paste
activecells.Offset(0, 1).Activate
activecells = Cells("contadorpadre", 2) * Cells("contadorpadre", columna + 1)
activerange.Offset(0, 1).Activate
contadorhija = contadorhija + 1
contadorpadre = contadorpadre + 1
copiado = 1
End If
Windows("Herramienta Patricio.xlsm").Activate
facha = columna + 3
Cells(2, columna).Activate
Loop
Windows(ref & ".xls").Activate
Cells(contadorhija, 14).Activate
If ActiveCell = "COMP" Or copiado = 0 Then
Cells(contadorhija, 5).Activate
Selection.Copy
Windows("Herramienta Patricio.xlsm").Activate
ActiveSheet.Paste
Windows(ref & ".xls").Activate
Cells(contadorhija, 9).Activate
Selection.Copy
Windows("Herramienta Patricio.xlsm").Activate
Cells("contadorpadre", columna + 1).Activate
ActiveSheet.Paste
Cells("contadorpadre", columna + 2) = Cells("contadorpadre", columna + 1) * Cells("facha", 2)
End If
Loop
Windows("Herramienta Patricio.xlsm").Activate
fila.Value = fila.Value + 1
Cells(1, fila).Select
Loop
End Sub