Jump to content

sretamalb

Members
  • Content Count

    197
  • Joined

  • Last visited

About sretamalb

  • Rank
    Advanced Member

Recent Profile Visitors

324 profile views
  1. Gracias Héctor, entonces es mejor trabajar en vez de Private Sub Workbook_Open() en: Private Sub Workbook_Activate()
  2. @Héctor Miguel no funciono, queda el libro2 abierto y el 1 cerrado.
  3. Buenas tardes, Tengo un libro1 en excel donde ejecuto una macro y este abre un libro2, el cual comienza a ejecutar otra macro. Hasta acá todo bien. El problema ocurre cuando quiero cerrar el libro 2. Cuando estoy en el libro 2 y cierro el libro 1 con la función Workbooks("libro1.xlsm").Close SaveChanges:=True, se cierra bien, el problema es que al continuar en el libro 2 este no se cierra queda abierto y necesito que también se cierre. Acá les dejo el código que estoy usando. Si reviso el código línea por línea con F8 se cierra todo y funciona perfect, entonces nosé porque cuando se ejecuta todo de una vez queda abierto al final el libro2 y no se cierra. Alguien me podría ayudar? Este código estoy ocupando: En el libro1: Private Sub Workbook_Open() Application.DisplayAlerts = False Application.ScreenUpdating = False ActiveCell.FormulaR1C1 = "=TODAY()-1" ThisWorkbook.Save nbre = "NO-TOCAR-" & ActiveWorkbook.Name ActiveWorkbook.SaveCopyAs ThisWorkbook.Path & "/" & nbre Call Abrir_libro2 Application.DisplayAlerts = True Application.ScreenUpdating = True End Sub En el libro2: Private Sub Workbook_Open() On Error Resume Next Workbooks("libro1.xlsm").Close SaveChanges:=True Call Macro2 Workbooks("libro2.xlsm").Close SaveChanges:=True End Sub El libro 1 se cierra bien pero queda activo el libro 2 no se cierra excel. Gracias!
  4. @José_Santos está súper bueno el archivo, pero existe alguna forma que yo pueda ingresar por ejemplo los SKU que quiero que se descargue la información? Por ejemplo: que en la columna A escriba el código del producto y en la B me arroje la descripción, en la C precio con descuento 449e, en la D 549e y en la E el -18%. Se puede? Lo ideal sería que uno pudiera buscar cualquier SKU en la página no solamente de tv Ojalá me puedas ayudar. Gracias!
  5. @José_Santos Muchas gracias por tu ayuda, lo revisaré y te comento. Saludos
  6. @avalencia si elimino la fila on error resume next me arroja el siguiente error: @Gerson Pineda si sacó coloco después del ciclo la variable precio1= empty no me arroja ningún resultado en la hoja de cálculo. Como se podrá solucionar? Muchas Gracias por la ayuda de ambos.
  7. @avalencia el problema es que si no le coloco “on error resume next” la macro me queda con error. Queria tratar de colocar algo como la formular de Excel si.error(), cosa que si no encuentra el código buscado en la web me lo dejé en blanco. Pero intente con la función “IsError” pero no funciono. Me recomiendas otra forma? muchas gracias.
  8. Buenas tardes, Estoy tratando de armar un archivo donde al escribir los códigos de ciertos productos este los busque en páginas web y me traiga los precios asociados, la macro funciona ahora como esta pero el problema ocurre cuando un código no lo encuentra en la página me escribe el precio del código anterior. Alguien me puede ayudar a que si no encuentra ese código en la página el valor quede en blanco? Este es el código que estoy usando. Sub test() Dim IE As New InternetExplorer Dim precio1, precio2 As Variant Dim doc As HTMLDocument Range("B2:C1000").Clear Cantfila = Sheets("Hoja1").Range("A" & Rows.Count).End(xlUp).Row For i = 2 To Cantfila IE.Visible = False IE.navigate "https://www.elcorteingles.es/electronica/ofertas-electronica/tv/" & Range("A" & i).Text & "/" Range("B6").Text Do DoEvents Loop Until IE.readyState = READYSTATE_COMPLETE Set doc = IE.document On Error Resume Next precio1 = doc.getElementsByClassName("fb-price")(0).innerText If Right(precio1, 1) = ")" Then largo = Len(precio1) Range("B" & i) = Mid(precio1, 1, largo - 9) Else Range("B" & i) = precio1 End If precio2 = doc.getElementsByClassName("fb-price")(1).innerText If Mid(precio2, 1, 1) = "A" Then Range("C" & i) = "" Else Range("C" & i) = precio2 End If Next i MsgBox "Proceso Terminado" IE.Quit End Sub Gracias!
  9. @avalencia la rueda del mouse está buena. No sé porque no funcionará, hice todo lo que me dijiste y aún así no puedo. En la hoja inicio tengo el siguiente código: En la hoja de Inicio: Private Sub Worksheet_SelectionChange(ByVal Target As Range) Sheets("Inicio").Cells.EntireRow.Hidden = False Sheets("Inicio").Cells.EntireColumn.Hidden = False End Sub En la hoja de "Reporte" y "Reporte-Boleta": Private Sub Worksheet_Activate() Application.ScreenUpdating = False Sheets("Reporte").Activate ActiveSheet.PivotTables("Tabla dinámica1").PivotCache.Refresh End Sub Y no corre la rueda =(
  10. Hola @JSDJSD gracias por tu respuesta, he seguido al pie de la letra lo escrito por @avalencia pero aún no así no logro que funcione en mi computador y la verdad que no se que puede ser. De verdad que no entiendo porque en mi computador no funciona bajar o subir las lineas con el raton se queda como pegado y tengo que usar la barra lateral. Me parece extraño que funcione a la perfección en tu computador y en el mio no, que podrá ser? Existe algún otro código donde se pueda revisar? Gracias por tus comentarios
  11. @avalencia Yo mismo deje inmovilizadas las primeras 10 filas porque son los títulos por lo tanto necesito que quede arriba, el problema ocurre cuando exista más información y tenga que bajar moviendo la rueda del mouse (scroll) pero no me deja, solo tengo que bajar con la barra que está al lado derecho. Porque no se puede mover la rueda del mouse? Agregué el código que me dijiste en el comienzo pero aún así no hay cambios: En la hoja de Inicio: Private Sub Worksheet_SelectionChange(ByVal Target As Range) Sheets("Inicio").Cells.EntireRow.Hidden = False Sheets("Inicio").Cells.EntireColumn.Hidden = False End Sub
  12. @avalencia Aún no funciona de verdad nosé que puede ser, tengo lo que me dices pero aún no me permite bajar la rueda del mouse en la hoja de los reportes. Mira tengo lo siguiente: En la hoja de Inicio: Private Sub Worksheet_SelectionChange(ByVal Target As Range) Sheets("Inicio").Cells.EntireRow.Hidden = False Sheets("Inicio").Cells.EntireColumn.Hidden = False End Sub En la hoja de "Reporte" y "Reporte-Boleta": Private Sub Worksheet_Activate() Application.ScreenUpdating = False Sheets("Reporte").Activate ActiveSheet.PivotTables("Tabla dinámica1").PivotCache.Refresh Cells.EntireRow.Hidden = False Cells.EntireColumn.Hidden = False End Sub Porque no funciona mover la rueda? Que estoy haciendo mal? PRUEBA.xlsm
  13. @avalencia no funciona. Tengo el siguiente código pero no funciona la rueda del mouse, porque será? Private Sub Worksheet_Activate() Application.ScreenUpdating = False Sheets("Reporte-Boleta").Activate ActiveSheet.PivotTables("Tabla dinámica1").PivotCache.Refresh Cells.EntireRow.Hidden = False Cells.EntireColumn.Hidden = False End Sub
×
×
  • Create New...

Important Information

Privacy Policy

Ayuda Excel - Madrid, Madrid, ES - Valorada por 5112 personas - Aprender Excel - Total: 4.7 / 5