worksheets with ssrs services multiple generate reporting-services

reporting-services - with - reporting services generate excel



Reporting Services exporta a Excel con varias hojas de trabajo (8)

Actualmente estoy creando un informe de MS Reporting Services que se procesa para sobresalir. Estoy intentando averiguar cómo configurar el informe para que cree varias hojas de trabajo (pestañas) de los datos en el informe. Entiendo que ingresar un salto de página en el informe le da una nueva hoja de trabajo, sin embargo, ¿hay alguna manera de nombrar cada pestaña en lugar de su valor predeterminado (hoja de trabajo 1, hoja de trabajo 2), etc.

Alguien sabe cómo se hace esto?

¡Gracias por adelantado!


Agrupe los datos de su informe según la categoría en la que desea que se basen sus hojas. Especifique que desea que esa agrupación comience una nueva página para cada categoría nueva. Cada página se convierte en una nueva hoja de trabajo en el libro de Excel.

Nota: uso SQL Server 2003 y Excel 2003.


Aquí hay capturas de pantalla para SQL Server 2008 R2, utilizando el Diseñador de informes de SSRS en Visual Studio 2010.

He hecho capturas de pantalla ya que algunos de los diálogos no son fáciles de encontrar.

1: agregue el grupo

2: especifique el campo en el que desea agrupar

3: Ahora haga clic en el grupo en el selector ''Grupos de filas'', directamente debajo del diseñador del informe

4: F4 para seleccionar el panel de propiedades; expanda ''Grupo'' y establezca Group> PageBreak> BreakLocation = ''Between'', luego ingrese la expresión que desea para Group> PageName

5: Aquí hay una expresión de ejemplo

Aquí está el resultado del informe exportado a Excel, con pestañas nombradas de acuerdo con la expresión PageName


Coloque el nombre de la pestaña en el encabezado de la página o agrupe TableRow1 en su informe para que aparezca en la posición "A1" en cada hoja de Excel. Luego ejecute esta macro en su libro de Excel.

Sub SelectSheet() For i = 1 To ThisWorkbook.Sheets.Count mysheet = "Sheet" & i On Error GoTo 10 Sheets(mysheet).Select Set Target = Range("A1") If Target = "" Then Exit Sub On Error GoTo Badname ActiveSheet.Name = Left(Target, 31) GoTo 10 Badname: MsgBox "Please revise the entry in A1." & Chr(13) _ & "It appears to contain one or more " & Chr(13) _ & "illegal characters." & Chr(13) Range("A1").Activate 10 Next i End Sub


Como señaló @huttelihut , esto ahora es posible a partir de SQL Server 2008 R2. Lea más aquí

Antes de 2008 R2 no parece posible, pero MSDN Social tiene algunas soluciones sugeridas.


En el grupo, presione F4 y busque el nombre de la página, en las propiedades y nombre de su página esto debería resolver su problema


Encontré una manera simple de evitar esto en 2005. Estos son mis pasos:

  1. Cree un parámetro de cadena con los valores ''Y'' y ''N'' llamados ''PageBreaks''.
  2. Agregue un nivel de grupo por encima del grupo (valor) que se utilizó para dividir los datos en varias hojas en Excel.
  3. Insertado en el primer campo de la caja de texto para este grupo, la expresión para ''PageBreaks'' como tal ... =IIF(Parameters!PageBreaks.Value="Y",Fields!DISP_PROJECT.Value,"") Nota: Si el parámetro = ''Y ''Entonces obtendrás las hojas múltiples para cada valor diferente. De lo contrario, el campo es NULL para cada registro de grupo (lo que provoca solo un salto de página al final).
  4. Cambie el valor oculto de visibilidad de la nueva fila de agrupación a ''Verdadero''.
  5. NOTA: Cuando haga esto, también determinará si tiene o no un salto de página en la vista, pero a mis usuarios les encanta, ya que tienen el control.

Hasta tarde para el asker original de la pregunta, pero con SQL Server 2008 R2 esto ahora es posible:

Establezca la propiedad "Salto de página" en el tablix o tabla u otro elemento para forzar una nueva pestaña, y luego configure la propiedad "Nombre de página" tanto en el elemento antes del salto de página como en el elemento después del salto de página. Estos nombres aparecerán en las pestañas cuando el informe se exporte a Excel.

Lea sobre esto aquí: http://technet.microsoft.com/en-us/library/dd255278.aspx


La solución de Edward funcionó para mí.

Si desea el tablix completo en una hoja con un nombre constante, especifique el Nombre de página en Propiedades del tablix. Si configura el PageName en las Propiedades del tablix, no puede usar datos del conjunto de datos del Tablix en su expresión.

Si desea agrupar las filas del tablix en hojas (o si desea una hoja con un nombre basado en los datos), especifique el Nombre de la página en el Encabezado del grupo.