Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi,
for awhile ive been trying to make a script to make my spreedy self sufficient so i can walk away and come back and know the exact time data changed on a site. For this ive got a query that updates every 3 seconds... the problem is quite often it gives the error recieved no data (this error can be recreated by making a site and linking to data on it then deleting the data on the web... then you should get the message i get) The problem is nothing will happen on the spreedy until that error is dealt to. What i am wondering is there any more stable ways for recieving data off of a web site, it seems as if its timing out when refreshing or something and taking it as if its recieved nothing. So What other kind of ways are there of extracting data from a web page. In advance Thankyou so much for your time and effort, Timothy p.s. it dosnt seem to have an error number so cant be classed as an error to use error trapping code... its more a statement or warning window |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
What is a "spreedy"?
How are you firing the refresh? Perhaps you could show the relevant code.... You could try Application.displayalerts=false before running the query. Tim. wrote in message ups.com... Hi, for awhile ive been trying to make a script to make my spreedy self sufficient so i can walk away and come back and know the exact time data changed on a site. For this ive got a query that updates every 3 seconds... the problem is quite often it gives the error recieved no data (this error can be recreated by making a site and linking to data on it then deleting the data on the web... then you should get the message i get) The problem is nothing will happen on the spreedy until that error is dealt to. What i am wondering is there any more stable ways for recieving data off of a web site, it seems as if its timing out when refreshing or something and taking it as if its recieved nothing. So What other kind of ways are there of extracting data from a web page. In advance Thankyou so much for your time and effort, Timothy p.s. it dosnt seem to have an error number so cant be classed as an error to use error trapping code... its more a statement or warning window |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
spreedy = spreedsheet
Ok basically its for a tycooning game... one stage of the game consists of loading your product into a warehouse then depending on how many you are loading it will take longer or shorter... my code is to constantly refresh that page so when my product status changes from "loading" to "loaded" it fires off a macro which records the time at which the job was loaded... this will help me to find the times of how long each ammount of jobs takes to load. at the current time i do not have a refresh method i just do it manually but if i can stop this message i will have a code to make it refresh every 3 seconds. application displayalerts = false before workbook refresh all does not seem to stop the message. anyone got any other ideas? |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
any other ideas out there?
|
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]() |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
spreedy = spreedsheet
Ok basically its for a tycooning game... one stage of the game consists of loading your product into a warehouse then depending on how many you are loading it will take longer or shorter... my code is to constantly refresh that page so when my product status changes from "loading" to "loaded" it fires off a macro which records the time at which the job was loaded... this will help me to find the times of how long each ammount of jobs takes to load. at the current time i do not have a refresh method i just do it manually but if i can stop this message i will have a code to make it refresh every 3 seconds. application displayalerts = false before workbook refresh all does not seem to stop the message. any other ideas out there? if you want i can e-mail you a copy of a sheet with the web query on it, and the ideal would be to try get it so when the error pops up it kills it then refreshes and loops until data is retrieved. |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
TB
If you refresh in the foreground, you will get a trappable error. Use syntax like Sheet1.QueryTables(1).Refresh Background:=False If there is no data, you will get Run Time Error 1004. No put in the appropriate On Error statment and you should be able to continue processing when the web page returns no data. Note that refreshing the foreground will dramatically slow the time it takes for the code to run, but not necessarily the time it takes for the whole operation to complete. -- Dick Kusleika Excel MVP Daily Dose of Excel www.dicks-blog.com wrote: any other ideas out there, if you want i can e-mail you a copy of a sheet with the web query on it, and the ideal would be to try get it so when the error pops up it kills it then refreshes and loops until data is retrieved. |
#8
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi thankyou so much for your reply if what you say works that will end
months of getting no where! im very sorry but i am kinda new to excel so is it possible for someone to show me how to construct that on to a sheet? so the code Sheet1.QueryTables(1).Refresh Background:=False then an on error statement to trap it then a on error statement to repeat the above steps if an error shows. (is it possible for you to put each bit in steps so i can study it and learn it for myself? thankyou very very much |
#9
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
TB
Email what you have to me and I'll walk you through the steps. -- Dick Kusleika Excel MVP Daily Dose of Excel www.dicks-blog.com wrote: Hi thankyou so much for your reply if what you say works that will end months of getting no where! im very sorry but i am kinda new to excel so is it possible for someone to show me how to construct that on to a sheet? so the code Sheet1.QueryTables(1).Refresh Background:=False then an on error statement to trap it then a on error statement to repeat the above steps if an error shows. (is it possible for you to put each bit in steps so i can study it and learn it for myself? thankyou very very much |
#10
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Sorry i dont know if what i think was an e-mail went through to you if
not here is someof what i said if so ive just finished a bit more in my code as follows. Sub LoopRefresh() StartHe newHour = Hour(Now()) newMinute = Minute(Now()) newSecond = Second(Now()) + 10 waitTime = TimeSerial(newHour, newMinute, newSecond) Application.Wait waitTime With ThisWorkbook.Sheets("Sheet1").Cells ..QueryTable.Refresh BackgroundQuery:=False End With GoTo StartHere End Sub This makes the refresh time to be every 10 seconds... now all i need is how to modiffy that to work with what you were talkiong about... so instead of showwing the message no data returned... it comes up with a error and then error traps it and restarts the refresh. |
#11
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Woah im getting close ive made it now so instead of the message poping
up it does a custom message box!!! which means its now possible to close that box! :D just working on the coding now!!! |
#12
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
The soloution to Web query returned no data message -
Public Sub Test() Dim Qrytbl As QueryTable For Each Qrytbl In ActiveSheet.QueryTables On Error Resume Next Qrytbl.Refresh False On Error GoTo 0 Next Qrytbl End Sub |
#13
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
try this
For i = 1 To ActiveSheet.QueryTables.Count ActiveSheet.QueryTables(i).Refresh False Next -- Don Guillett SalesAid Software wrote in message ps.com... The soloution to Web query returned no data message - Public Sub Test() Dim Qrytbl As QueryTable For Each Qrytbl In ActiveSheet.QueryTables On Error Resume Next Qrytbl.Refresh False On Error GoTo 0 Next Qrytbl End Sub |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Use MS Query to query data within the current work book | Excel Discussion (Misc queries) | |||
Convert hard coded query criteria to Parameter Query | Excel Discussion (Misc queries) | |||
Excel 2007 / MS Query - editing existing query to another sheet | Excel Discussion (Misc queries) | |||
Importing Data via Web Query - Can values be passed to query? | Excel Discussion (Misc queries) | |||
How to use a Access Query that as a parameter into Excel database query | Excel Discussion (Misc queries) |