¿¿como saber si una hoja existe en el libro??

30/07/2004 - 11:10 por gema.bernardo | Informe spam
Hola gente!

Tengo un libro en el cual realizo una conexion con un servidor y donde
realizo varias consultas a BD mediante llamadas a servlets de Java a
traves de una llamada a él con una URL (QueryTables).

Cuando hago la conexion y el usuario es validado correctamente, se ejecuta
una consulta en BD cuyo resultado es almacenada en una nueva Hoja que la
llamo AUX1.

EL problema es q la existencia de esa hoja es la que me indica que la
conexion ha sido realizada OK. Como puedo comprobar si existe una hoja
llamada AUX1???

El codigo seria mas o menos asi:

' Me creo esa hoja nueva
Sheets.Add AFTER:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "AUX1"
Sheets(Sheets.Count).Visible = True

' Ejecuto la consulta
With Sheets(Sheets.Count)
With .QueryTables.Add(Connection:=query_string,
Destination:=.Range("A1:IV65536"))
.Name = "Connect"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = False '
'.BackgroundQuery = True '--
.RefreshStyle = xlOverwriteCells
.SavePassword = False
.SaveData = False
.AdjustColumnWidth = False
.RefreshPeriod = 0
.WebSelectionType = xlAllTables
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.EnableEditing = False
.Refresh BackgroundQuery:=False
'.Refresh BackgroundQuery:=True
End With
.Rows.AutoFit
.Columns.AutoFit
End With
my_queryname = Sheets(Sheets.Count).QueryTables(1).Name
Sheets(Sheets.Count).Names(my_queryname).Delete

Preguntas similare

Leer las respuestas

#1 Leandro
30/07/2004 - 18:04 | Informe spam
Este codigo te permite saber si la hoja existe o no.
Agregalo al codigo
Saludos

Dim Hoja As Worksheet
Dim NombreHoja As String

NombreHoja = "AUX1"

For Each Hoja In Worksheets
If Hoja.Name = NombreHoja Then
MsgBox "La hoja " & NombreHoja & " existe", vbInformation
Exit Sub
End If
Next
MsgBox "La hoja " & NombreHoja & " no existe", vbCritical


Hola gente!

Tengo un libro en el cual realizo una conexion con un


servidor y donde
realizo varias consultas a BD mediante llamadas a


servlets de Java a
traves de una llamada a él con una URL (QueryTables).

Cuando hago la conexion y el usuario es validado


correctamente, se ejecuta
una consulta en BD cuyo resultado es almacenada en una


nueva Hoja que la
llamo AUX1.

EL problema es q la existencia de esa hoja es la que me


indica que la
conexion ha sido realizada OK. Como puedo comprobar si


existe una hoja
llamada AUX1???

El codigo seria mas o menos asi:

' Me creo esa hoja nueva
Sheets.Add AFTER:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "AUX1"
Sheets(Sheets.Count).Visible = True

' Ejecuto la consulta
With Sheets(Sheets.Count)
With .QueryTables.Add(Connection:=query_string,
Destination:=.Range("A1:IV65536"))
.Name = "Connect"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = False '
'.BackgroundQuery = True '--
.RefreshStyle = xlOverwriteCells
.SavePassword = False
.SaveData = False
.AdjustColumnWidth = False
.RefreshPeriod = 0
.WebSelectionType = xlAllTables
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.EnableEditing = False
.Refresh BackgroundQuery:=False
'.Refresh BackgroundQuery:=True
End With
.Rows.AutoFit
.Columns.AutoFit
End With
my_queryname = Sheets(Sheets.Count).QueryTables(1).Name
Sheets(Sheets.Count).Names(my_queryname).Delete


.

Respuesta Responder a este mensaje
#2 Anonimo
30/07/2004 - 18:20 | Informe spam
Algo así te valdría?

Dim Hoja As Worksheet
Dim Libro As Workbook
Set Libro = Application.ActiveWorkbook

For Each Hoja In Libro.Worksheets
If Hoja.Name = "Hoja1" Then
MsgBox "Encontrada Hoja1"
End If
Next






Hola gente!

Tengo un libro en el cual realizo una conexion con un


servidor y donde
realizo varias consultas a BD mediante llamadas a servlets


de Java a
traves de una llamada a él con una URL (QueryTables).

Cuando hago la conexion y el usuario es validado


correctamente, se ejecuta
una consulta en BD cuyo resultado es almacenada en una


nueva Hoja que la
llamo AUX1.

EL problema es q la existencia de esa hoja es la que me


indica que la
conexion ha sido realizada OK. Como puedo comprobar si


existe una hoja
llamada AUX1???

El codigo seria mas o menos asi:

' Me creo esa hoja nueva
Sheets.Add AFTER:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "AUX1"
Sheets(Sheets.Count).Visible = True

' Ejecuto la consulta
With Sheets(Sheets.Count)
With .QueryTables.Add(Connection:=query_string,
Destination:=.Range("A1:IV65536"))
.Name = "Connect"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = False '
'.BackgroundQuery = True '--
.RefreshStyle = xlOverwriteCells
.SavePassword = False
.SaveData = False
.AdjustColumnWidth = False
.RefreshPeriod = 0
.WebSelectionType = xlAllTables
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.EnableEditing = False
.Refresh BackgroundQuery:=False
'.Refresh BackgroundQuery:=True
End With
.Rows.AutoFit
.Columns.AutoFit
End With
my_queryname = Sheets(Sheets.Count).QueryTables(1).Name
Sheets(Sheets.Count).Names(my_queryname).Delete


.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida