Hej på er! Hej, det här är tyvärr inget svar utan en fråga kring vilken metod du använder för att skicka data från Excel till Access. Vi upplever lite problem med det. Viktor, Hej! Sofie, Hej XL-Dennis!! Hej Sofia, Hej Dennis! Hej Dennis, jag har beskrivit ärendet under en rubrik som heter "Att skicka värden från flera kalkylblad i Excel till Access". Excel/access
Jag har en accessapplikation som flyttar över data till excel (i form av en offert).
När användaren mixtrat med rabatter och dylikt så kan han klicka på en knapp i excel som då flyttar över de nya rabattsatserna tillbaka till access.
Det jag skulle vilja är att det då aktiva accessformuläret uppdateras samtidigt som datat förs över.
Hur kan jag i excel få ett formulär i access att uppdatera sig??
Om det ens går??
Tack!
Mvh,
SofiaSv: Excel/access
Sv: Excel/access
Det finns flera möjliga sätt att sända data mellan XL - Access. De två mest tillförlitliga metoderna är DAO och ADO beroende på vilken version av XL som nyttjas.
Återkom med vad problemet består av.
DennisSv: Excel/access
Har fått en lösning på den frågan jag skrev men istället har ett följdproblem uppstått.
(Jag använder mig förresten av DAO för att flytta tillbaka datat till Access.)
Problemet jag har nu är att när koden som ska uppdatera datat i access körs i excel hinner accessdb inte uppdateras med det nya datat innan access-formuläret ska uppdateras (innehållande den nya informationen).
Om jag stegar igenom koden alternativt avbryter den efter att datat stoppats in i access med en msgbox eller liknande och sen fortsätter så funkar det till 110%.
Om jag inte gör ovanstående så uppdateras formuläret i access men inte med den nya informationen.
Verkar alltså som att datat inte hinner infinna sig om man låter koden exekvera normalt.
Har provat att lägga in massa loopar med doevents (och loopar som inte gör något med för den delen) och då funkar det IBLAND men jag har fortfarande en alldeles för hög felprocent.
Vet faktiskt inte hur jag ska gå vidare för att få det att fungera säkert.
Alla förslag mottages tacksamt.Sv: Excel/access
Du behöver använda dig av en stabilare lösning
<code>
Private Declare Function OpenProcess Lib "kernel32" ( _
ByVal dwDesiredAccess As Long, _
ByVal bInheritHandle As Long, _
ByVal dwProcessId As Long) As Long
Private Declare Function GetExitCodeProcess Lib "kernel32" ( _
ByVal lnghProcess As Long, _
lpExitCode As Long) As Long
Private Const PROCESS_ALL_ACCESS = &H1F0FFF
Public Function ShlProc_IsRunning(ShellReturnValue As Long) As Boolean
'Denna funktion hämtar upp statusen för programmet och returnerar "True" om
'programmet fortfarande exekveras eller "False" om den är avslutad.
Dim lnghProcess As Long
Dim lExitCode As Long
lnghProcess = OpenProcess(PROCESS_ALL_ACCESS, 0&, ShellReturnValue)
If lnghProcess <> 0 Then
GetExitCodeProcess lnghProcess, lExitCode
If lExitCode <> 0 Then
ShlProc_IsRunning = True
Else
ShlProc_IsRunning = False
End If
End If
End Function
............
Do While ShlProc_IsRunning(ZipItPID) = True
DoEvents
Loop
.........
</code>
Ett fullständigt tips om detta hittar du här www.xldennis.com/winzip1(vba).htm
DennisSv: Excel/access
En fråga bara, vad är ZipItPID för värde som ska skickas med?
Do While ShlProc_IsRunning(ZipItPID) = True
DoEvents
Loop
Har ju inte kunnat testa detta ännu eftersom jag inte vet vad som ska med där, men är det annars något annat jag måste göra?
Ser ut som att det bara är att klistra in och köra?
Tack SNÄLLA!!!
Mvh,
SofiaSv: Excel/access
Hoppsan, jag slarvade visst bort länken:
www.xldennis.com/winzip1(vba).htm
http://www.xldennis.com/winzip1(vba).htm
DennisSv: Excel/access
Jag är dålig på shell(), så jag kanske kan be dig om hjälp?
Access-applikationen som jag vill uppdatera ett formulär i (från Excel) är redan öppen (vi kan kalla den c:\temb.mdb)
När användaren inne i excel klickar på en knapp ska excel uppdatera accessdbn med data.
Det är när denna process är klar som jag vill fortsätta med resterande excelkod.
Vad ska jag skriva in i motsvarigheten till
ZipItPID = Shell(stWinZipExe & " " & stMalFil & " " & stKallFil, 6)
i detta fall?
Tack snälla för Din hjälp!
/Förvirrad SofiaSv: Excel/access
Hoppas att det blir lite klarare, tack på förhand!