Excel - Exportar datos web a excel

 
Vista:
sin imagen de perfil
Val: 4
Ha aumentado 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Exportar datos web a excel

Publicado por fdbchp (4 intervenciones) el 01/08/2013 12:04:09
Adjunto archivo con dos macros para exportar datos de una web americana de trabajo.

Transcribo aquí los dos módulos y además un archivo zip con la hoja excel.

cuando le doy a ejecutar la macro me responde " error 438 en tiempo de ejecución, El objeto no admite esta propiedad o metodo"

No sé muy bien a qué se refiere. Pódeis ayudarme??? es urgente Gracias


modulo 1
Sub macro1()

' Macro1 Macro
' formatting imported data
'

'

Columns("A:D").Select
Selection.Columns.AutoFit
With Selection
.VertilcalAligment = xlTop
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
End With
Range("D1").Selection
Columns("D:D").ColumnWidth = 50
Columns("A:D").Select
Selection.Rows.AutoFit
End Sub


------------------------

modulo 2
Sub test()

Dim eROW As Long
Dim ELE As Object

Set STH = Sheets("SHEET1")
RowCount = 1
STH.Range("A" & RowCount) = "TITLE"
STH.Range("B" & RowCount) = "COMPANY"
STH.Range("C" & RowCount) = "LOCATION"
STH.Range("D" & RowCount) = "DESCRIPTION"

eROW = SHEET1.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row

Set OBJIE = CreateObject("INTERNETEXPLORER.APPLICATION")

myjobtype = InputBox("ENTER TYPE OF JOB EG. SALES, ADMINISTRATION")
myzip = InputBox("ENTER ZIPCODE OF AREA WHERE YOU WISH TO WORK")

With OBJIE
.Visible = True
.navigate "http://www.jobs.com/"

Do While .busy Or _
.READYSTATE <> 4
DoEvents
Loop

Set what = .document.getELementsbyName("q")
what.Item(0).Value = myjobtype

Set zipcode = .document.getELementsbyName("where")
zipcode.Item(0).Value = myzip

.document.getelementbyid("jobsbutton").Click

Do While .busy Or _
.READYSTATE <> 4
DoEvents

Loop

For Each ELE In .document.all
Select Case ELE.classname
Case "result"
RowCount = RowCount + 1
Case "title"
sht.Range("A" & RowCount) = ELE.INNERTEXT
Case "COMPANY"
sht.Range("B" & RowCount) = ELE.INNERTEXT
Case "LOCATION"
sht.Range("C" & RowCount) = ELE.INNERTEXT
Case "DESCRIPTION"
sht.Range("D" & RowCount) = ELE.INNERTEXT

End Select
Next ELE

End With

macro1

Set OBJIE = Nothing

End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder