Centar za edukaciju-BiH


Odgovori na temu











Prosiri Boja Prosiri Velicina Spoiler WMP-Videos Neprimjereno
Podebljano Kurziv Podvuceno Slika Internet adresa (URL) Citat Van teme Neuredena lista Narucena lista Pretplata Nadredeni
Grinning Happy Cool Surprised Disappointed Laughing In love Angry No comment Embarrassing Shy Smiling Tongue Undecided Innocent Wink Sad Prosiri i skupi vise smajlica
Povecaj velicinu · Smanji velicinu Provjeri duzinu

Pretvori smajlice u postu
Pretvori & quot; vokable & quot; u postu


Upravljanje prilozima
Mozete priloziti 3 datoteke!



Posljednjih 15 postova u ovoj temi


zxz (14.04.2022 00:28):
Predmet: Re:VBA scraping
funkcija se moze pozvati iz bilo koje celije kao i sve ostale gotove funkcije.
Mozes skinuti i cio sadrzaja ako nemas filtere u funkciji odnosno ako skidas od taga body.

Avko (12.04.2022 08:51):
Predmet: Re:VBA scraping
Citiraj pmiroslav:
Dobar dan.
Isprobavam ovo i funkcija radi kada ju pokrenem u VBA editoru. Za Access znam ali mi nije potpuno jasno kako se funkcija poziva kada se otvoru Excel sheet?

ja sam to napravio ovako:
u module1 dodao sam jos ovo:

Sub proba()
Call test
End Sub

zatim sam na List1 stavio tipku na ovaj nacin:


cijeli kod. Nakon sto se pokaze vic ako pritisnemo OK, pokaze sljedeci vic a ako kliknemo na cancel vrati nas na List1 tj, izade iz funkcije

PreuzmiIzvorni kôd (Visual Basic):
  1. Sub proba()
  2.         Call test
  3.     End Sub
  4.     Function test()
  5.         Dim odgovor
  6. the_start:
  7.        
  8.         Set objIE = CreateObject("InternetExplorer.Application")
  9.         objIE.Top = 0
  10.         objIE.Left = 0
  11.         objIE.Width = 800
  12.         objIE.Height = 600
  13.         objIE.Visible = False 'We will see the window navigation
  14.        
  15.         On Error Resume Next
  16.         objIE.Navigate ("https://icentar.ba/icentar/showtopic.php?id=22")
  17.        
  18.         Do
  19.         DoEvents
  20.             If Err.Number <> 0 Then
  21.                 objIE.Quit
  22.                 Set objIE = Nothing
  23.                 GoTo the_start:
  24.             End If
  25.         Loop Until objIE.ReadyState = 4
  26.        
  27.        
  28.         Dim AllString As String
  29.        
  30.         Set Alllinks = objIE.Document.getElementsByTagName("div")
  31.         For Each Hyperlink In Alllinks
  32.            ime = Hyperlink.className
  33.             If ime = "bbody iefix_left" Then
  34.                 AllString = Hyperlink.innerText
  35.                  
  36.                 odgovor = MsgBox(AllString, vbOKCancel)
  37.                 If odgovor = vbCancel Then Exit Function
  38.                
  39.             End If
  40.         Next
  41.        
  42.     Set objIE = Nothing
  43.     End Function

za svaku web stranicu drugacije treba prilagoditi kod jer ne sadrze sve tekst vica izmedu div, neke imaju u <a> ili <p>
Tako da ne postoji univerzalni kod za skidanje sadrzaja web stranice vec ga moramo rucno prilagoditi.
Treba sa firefox otvoriti web lokaciju a zatim izabrati u meniju firefoksa-vise alata-pokazi izvornu web stranicu i onda prouciti gdje se nalazi tekst koji zelimo skinuti i prilagoditi kod

pmiroslav (10.04.2022 14:02):
Predmet: Re:VBA scraping
Dobar dan.
Isprobavam ovo i funkcija radi kada ju pokrenem u VBA editoru. Za Access znam ali mi nije potpuno jasno kako se funkcija poziva kada se otvoru Excel sheet?

zxz (09.04.2022 10:48):
Predmet: Re:VBA scraping
Nece niko ni da proba.
PreuzmiIzvorni kôd (Visual Basic):
  1. Function test()
  2.    
  3. the_start:
  4.    
  5.     Set objIE = CreateObject("InternetExplorer.Application")
  6.     objIE.Top = 0
  7.     objIE.Left = 0
  8.     objIE.Width = 800
  9.     objIE.Height = 600
  10.     objIE.Visible = False 'We will see the window navigation
  11.    
  12.     On Error Resume Next
  13.     objIE.Navigate ("https://icentar.ba/icentar/showtopic.php?id=22")
  14.    
  15.     Do
  16.     DoEvents
  17.         If Err.Number <> 0 Then
  18.             objIE.Quit
  19.             Set objIE = Nothing
  20.             GoTo the_start:
  21.         End If
  22.     Loop Until objIE.ReadyState = 4
  23.    
  24.    
  25.     Dim AllString As String
  26.    
  27.     Set Alllinks = objIE.Document.getElementsByTagName("div")
  28.     For Each Hyperlink In Alllinks
  29.        ime = Hyperlink.className
  30.         If ime = "bbody iefix_left" Then
  31.             AllString = Hyperlink.innerText
  32.              MsgBox AllString
  33.             MsgBox Hyperlink.Name
  34.              'Exit For
  35.        End If
  36.     Next
  37.    
  38. Set objIE = Nothing
  39. End Function

Avko (05.04.2022 12:43):
Predmet: VBA scraping
mozda znate kako bi skinuo viceve sa web stranice u excel?

web stranica: https://icentar.ba/icentar/showtopic.php?id=22

PreuzmiIzvorni kôd (Visual Basic):
  1. Sub test()
  2.    
  3. the_start:
  4.    
  5.     Set objIE = CreateObject("InternetExplorer.Application")
  6.     objIE.Top = 0
  7.     objIE.Left = 0
  8.     objIE.Width = 800
  9.     objIE.Height = 600
  10.     objIE.Visible = False 'We will see the window navigation
  11.    
  12.     On Error Resume Next
  13.     objIE.Navigate ("https://icentar.ba/icentar/showtopic.php?id=22")
  14.    
  15.     Do
  16.     DoEvents
  17.         If Err.Number <> 0 Then
  18.             objIE.Quit
  19.             Set objIE = Nothing
  20.             GoTo the_start:
  21.         End If
  22.     Loop Until objIE.ReadyState = 4
  23.    
  24.     MsgBox "webpage has loaded"
  25.    
  26.     Dim AllString As String
  27.    
  28.     Set Alllinks = objIE.Document.getElementsByTagName("a")
  29.     For Each Hyperlink In Alllinks
  30.         If InStr(Hyperlink.innerText, "Haso") > 0 Then
  31.             AllString = Hyperlink.innerText
  32.             Exit For
  33.         End If
  34.     Next
  35.    
  36.     MsgBox AllString
  37.    
  38. End Sub

Sva vremena su GMT +01:00. Trenutno vrijeme: 12: 15 am.