vincular una sheets salga referida referencia que puedo poner para otro otra numero nombres nombre libro hojas hoja hacer google formular formato enlazar diferentes datos dato cómo condicional como columna celdas celda aparezca administrador excel vba excel-vba

excel - sheets - ¿Cómo nombro una hoja de cálculo automáticamente, haciendo referencia a dos celdas?



nombre de hoja en celda excel (1)

Acabo de terminar de escribir una macro spiffy para generar informes automáticamente. Funciona bien, pero lo necesito para nombrar automáticamente la hoja de cálculo de acuerdo con los datos en dos celdas.

Esencialmente, esta macro crea una nueva hoja de cálculo, copia la información y crea las tablas dinámicas relevantes que se requieren mensualmente.

Como parte de esto, he creado un panel para generar el informe con instrucciones y un rango de fechas con el que se relaciona el informe. Actualmente crea la hoja de cálculo " NUEVO INFORME ". ¿Hay alguna forma de crear la nueva hoja de cálculo y nombrarla de forma automática según las líneas de "Informe 01.01.15 a 01.02.15"?

Tengo el intervalo de fechas como dos celdas separadas, y sé que tendré que asegurarme de que el intervalo de fechas sea uno que use caracteres permitidos (es decir, 01.01.15 en lugar de 01/01/15). ¿Es correcto decir que hay una manera de decirle al usuario que ha puesto las fechas con los separadores incorrectos?


Option Explicit Sub SaveAs() Dim FileName As String Dim FilePath As String Dim FName As String FilePath = "C:/Temp" FileName = Sheets("Sheet1").Range("A1").Text FName = Sheets("Sheet1").Range("B1").Text ThisWorkbook.SaveAs FileName:=FilePath & "/" & FileName & FName End Sub

Para guardarlo en la fecha de hoy

Dim sSave As String sSave = "Reports " & Format(Date, "dd-mm-yyyy")

O mañana fecha

"Reports" & Format(Date + 1, "dd-mm-yyyy")

Para el formato de archivo Ver ejemplos

ThisWorkbook.SaveAs Filename:=FilePath, fileformat:=52

Estos son los principales formatos de archivo en Excel 2007-2013

51 = xlOpenXMLWorkbook (without macro''s in 2007-2013, xlsx) 52 = xlOpenXMLWorkbookMacroEnabled (with or without macro''s in 2007-2013, xlsm) 50 = xlExcel12 (Excel Binary Workbook in 2007-2013 with or without macro''s, xlsb) 56 = xlExcel8 (97-2003 format in Excel 2007-2013, xls) *Or maybe you want to save the one worksheet workbook to csv, txt or prn.* ".csv": FileFormatNum = 6 ".txt": FileFormatNum = -4158 ".prn": FileFormatNum = 36

Para guardar solo una hoja como libro nuevo, debe copiar la hoja antes de guardarla

Option Explicit Sub SaveAs() Dim Sht As Worksheet Dim FileName As String Dim FilePath As String FilePath = "C:/Temp" FileName = Sheets("Sheet1").Range("A1").Text Set Sht = ActiveWorkbook.Sheets("Sheet1") Sht.Copy ActiveWorkbook.SaveAs FileName:=FilePath & "/" & FileName End Sub

Para guardar varias hojas como libro de trabajo nuevo, use Sheets(Array("Sheet1", "Sheet2")).Copy

Option Explicit Sub SaveAs() Dim Sht As Worksheet Dim Book As Workbook Dim FileName As String Dim FilePath As String FilePath = "C:/Temp" FileName = Sheets("Sheet1").Range("A1").Text Set Book = ActiveWorkbook With Book .Sheets(Array("Sheet1", "Sheet2")).Copy End With ActiveWorkbook.SaveAs FileName:=FilePath & "/" & FileName End Sub