![]() |
vba_excel .exportar hojas a un nuevo libro Hola, os comento mi consulta: -Tengo un libro de Excel cuyo nombre no se. -Este libro tiene las siguientes hojas: -HP (siempre visible) -Resumen (siempre visible) -Cprod1 (visible si checkbox1 del userform =true) -Cprod2 (visible si checkbox2 del userform =tue) -Cprod3 (visible si checkbox3 del userform =true) -Quiero exportar a un nuevo libro de Excel ,cuyo nombre no se, las hojas visibles, menos la hoja HP. He probado entre otras cosas lo siguiente: 1- Sheets(Array("RESUMEN", "PROD1", "PROD2", "PROD3")).Select Sheets(Array("RESUMEN", "PROD1", "PROD2", "PROD3")).Copy Cells.Select Selection.Copy Pero, da error porque puede que no tenga visible la hoja Prod1, o la Prod2 o la Prod3 (que de hecho no quiero exportar las no visibles). 2- If Cprod1.value=true then Sheets( "PROD1”)).Select Sheets(“PROD1").Copy Cells.Select Selection.Copy Else If Cprod2.value=true then Sheets("PROD2").Select Sheets("PROD2 ").Copy Cells.Select Selection.Copy Etc… Pero me crea un nuevo libro para cada hoja. ¿alguien me da alguna idea de como lo podría solucionar? |
Re: vba_excel .exportar hojas a un nuevo libro Al final he encontrado una solucioncilla,que por lo menos hace lo que quería...haciendo macros de excel y solo que no sabía como volver al libro activo inicial. Private Sub cmbguardar_Click() milibro = ActiveWorkbook.Name nuevolibro = InputBox("NOMBRE" & vbCrLf & "INFORMA NOMBRE DEL NUEVO LIBRO", "ERROR") nombrenuevolibro = (nuevolibro) Workbooks.Add ActiveWorkbook.SaveAs Filename:=nombrenuevolibro, FileFormat:= _ xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _ , CreateBackup:=False Windows(milibro).Activate Sheets("RESUMEN").Select Sheets("RESUMEN").Copy Before:=Workbooks(nombrenuevolibro).Sheets(1) Windows(milibro).Activate If CPROD1A.Value = True Then Sheets("PROD1").Select Sheets("PROD1").Copy Before:=Workbooks(nombrenuevolibro).Sheets(1) End If Windows(milibro).Activate If CPROD2A.Value = True Then Sheets("PROD2").Select Sheets("PROD2").Copy Before:=Workbooks(nombrenuevolibro).Sheets(1) End If Windows(milibro).Activate If CPROD3A.Value = True Then Sheets("PROD3").Select Sheets("PROD3").Copy Before:=Workbooks(nombrenuevolibro).Sheets(1) End If Windows(milibro).Activate End Sub |
| La zona horaria es GMT -6. Ahora son las 21:52. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.