PNG32 PNG32 PNG32 PNG32
PNG32
Forum Excel, VBA, VSTO, Exceltips, Excelhj�lp PNG32 drivs av Excelspecialisten    Logga in     English
PNG32
PNG32 PNG32
PNG32

Logga in

PNG32

Du är inte inloggad. Logga in eller registrera dig för att skriva inlägg eller svara på inlägg.

För frågor om forumet, kontakta oss på webmaster@excelforum.se

PNG32 PNG32
PNG32 PNG32
PNG32

Excelforum

PNG32

 
ForumForumDiskussionerDiskussionerVBAVBATimer or delay in a macroTimer or delay in a macro
Föregående Föregående
 
Nästa Nästa
Nytt inlägg
 2020-09-01 06:01
 

 Hej

Jag har en macro som ska öppna en fil och sedan köra en query i filen, spara filen och sedan stänga filen igen.

Problemet är att ibland är det lite långsamt med datorn/uppkopplingen och jag får en dialogruta "vill du avbryta...."

Detta kommer upp pga excel arc har inte hunnit att uppdatera värden i tabellen innan macron vill spara och stänga ner filen igen. 

Därför vill jag lägga in en "delay" på ca 30-45 sec efter steget "uppdatera query".

Finns det någon enkla sätt att göra detta?

 

mvh

Jamal

Nytt inlägg
 2020-09-01 08:23
 

 Hej hej

 

Wait funktionen pausar din kod till angivet klockslag. Nedan rad pausar i 45 sekunder. Finns det något sätt för dig att undersöka om queryn är klar så kan du loopa din wait funktion så du inte behöver pausa så länge. 

Application.Wait(now + timevalue("00:00:45"). 

Möjligtvis så skulle du även kunna stänga av popup rutan

Application.DisplayAlerts = false

Samt frigöra arbetsminne genom att stänga av lite funktionalitet i excel innan du kör koden:

application.calculation = xlcalculationmanual

Application.Screenupdating = false

Glöm inte att slå på¨alla igen innan koden avslutas :)

Mvh

Christian

/c

Nytt inlägg
 2020-09-01 16:26
 

 Tack för svaret! Jag ska prova den och återkommer. Meningen med macro är så jag kan bara låta den köra då det är ett antal filer & queries som ska öppnas och uppdateras så det är inget problem att den pausar några extra sekunder :-)

Menar du med den "application.calculation...." att man kan tvinga excel att inte beräkna alla nya värden som kommer tillbaka med queryn? Det hade vara suveränt då en väldig väldig stor del av tiden den tar med dessa stora queries är att vänta på uppdateringar av delsummor och ändra förmulär i varje excel fil. typ "uppdaterare tråder...."

mvh

Jamal

Nytt inlägg
 2020-09-02 09:10
 

 Ja, xlcalc ändrar så att excel inte längre beräknar. Glöm inte att ändra till application.calculation = xlCalculationAutomatic i slutet av koden. 

Funktionen ligger på applikationen och inte på varje enskild arbetsbok, Så det räcker att stänga av/sätta på, en gång. 

/c

Föregående Föregående
 
Nästa Nästa
ForumForumDiskussionerDiskussionerVBAVBATimer or delay in a macroTimer or delay in a macro

PNG32 PNG32
Excelforum drivs av Excelspecialisten som bedriver utbildning i Excel och VBA, tillhandahåller support och hjälp med Excel, utvecklar program i Excel. Är ni i behov av en konsult inom Excel, VBA eller VSTO, eller söker en excelkurs, kontakta oss.
Copyright 2013 ExcelSpecialisten XLS AB   Användarvillkor  Personliga uppgifter