Foros del Web » Programación para mayores de 30 ;) » .NET »

.NET y Excell

Estas en el tema de .NET y Excell en el foro de .NET en Foros del Web. A traves del siguiente código quiero recorrer los hipervinculos de un documento de Excell, lo tengo resuelto en Word y Powerpoint, pero en Excell me ...
  #1 (permalink)  
Antiguo 22/06/2005, 05:06
Avatar de txarly  
Fecha de Ingreso: marzo-2003
Ubicación: Eibar (Gipuzkoa)
Mensajes: 455
Antigüedad: 21 años, 2 meses
Puntos: 2
.NET y Excell

A traves del siguiente código quiero recorrer los hipervinculos de un documento de Excell, lo tengo resuelto en Word y Powerpoint, pero en Excell me da error en la linea marcada en negrita, alguien sabe porque?

Código:
Dim EA As Microsoft.Office.Interop.Excel.Application
Dim WB As Microsoft.Office.Interop.Excel.Workbook
Dim WS As Microsoft.Office.Interop.Excel.Worksheet
Dim HL As Microsoft.Office.Interop.Excel.Hyperlink

EA = New Microsoft.Office.Interop.Excel.Application
EA.Visible = False
WB = EA.Workbooks.Open(pathFichero)
For Each WS In WB.Worksheets
  For Each HL In WS.Hyperlinks
    With HL
      .Address = ModAddress(.Address)
    End With
  Next HL
Next WS

WB.Save()
WB.Close()
EA.Quit()
EA = Nothing
ModAddress es una Funcion propia para cambiar la url a la que apuntan los links.
__________________
¿Por qué Uri Geller doblaba cucharas?

Última edición por txarly; 28/06/2005 a las 03:40
  #2 (permalink)  
Antiguo 22/06/2005, 09:14
Avatar de Jose_minglein2  
Fecha de Ingreso: noviembre-2004
Mensajes: 2.344
Antigüedad: 19 años, 5 meses
Puntos: 8
Acabo de descubrir Microsoft.Office.Interop, mi intención es obtener el texto de un archivo de Word, podrías darme alguna orientación de como leerlo???Estoy intentando con Microsoft.Office.Interop.Word.Document, pero ando un poco atascadillo
  #3 (permalink)  
Antiguo 28/06/2005, 03:38
Avatar de txarly  
Fecha de Ingreso: marzo-2003
Ubicación: Eibar (Gipuzkoa)
Mensajes: 455
Antigüedad: 21 años, 2 meses
Puntos: 2
Lo solucioné así:

Código:
    Dim EA As Microsoft.Office.Interop.Excel.Application
    Dim WB As Microsoft.Office.Interop.Excel.Workbook
    Dim sheet As Microsoft.Office.Interop.Excel.Worksheet
    Dim i As Integer, j As Integer

    EA = New Microsoft.Office.Interop.Excel.Application
    EA.Visible = False
    WB = EA.Workbooks.Open(pathFichero)

    For i = 1 To WB.Worksheets.Count
      sheet = WB.Worksheets(i)
      For j = 1 To sheet.Hyperlinks.Count
        sheet.Hyperlinks(j).Address = ModAddress(sheet.Hyperlinks(j).Address)
      Next
    Next

    WB.Save()
    WB.Close()
    EA.Quit()
    EA = Nothing
Hola Jose_minglein2, respecto a Word, dejo el codigo para acceder a los hipervinculos, no he probado a acceder al texto pero supongo que con algun metodo del objeto Microsoft.Office.Interop.Word.Document...

Código:
    Dim WA As New Microsoft.Office.Interop.Word.Application
    Dim WD As Microsoft.Office.Interop.Word.Document
    Dim HL As Microsoft.Office.Interop.Word.Hyperlink

    WA.Visible = False
    WD = WA.Documents.Open(pathFichero)
    For Each HL In WD.Hyperlinks
      With HL
        .Address = ModAddress(.Address)
      End With
    Next HL

    WD.Save()
    WD.Close()
    WA.Quit()
    WA = Nothing
__________________
¿Por qué Uri Geller doblaba cucharas?
  #4 (permalink)  
Antiguo 28/06/2005, 04:22
Avatar de Jose_minglein2  
Fecha de Ingreso: noviembre-2004
Mensajes: 2.344
Antigüedad: 19 años, 5 meses
Puntos: 8
Muchas gracias, voy a probar tu code,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 19:44.