Ich erhalte einen Fehler beim Versuch, eine Abfrage über VBA in Excel auszuführen.VBA Excel - Access-Abfrage nicht aktualisierbar
Fehler:
Run-time error '3073': Operation must use an updateable query.
Ich habe eine Abfrage, die Daten aus einer Tabelle in Excel abruft.
qryAllData:
SELECT ID, Field1 AS [Date], Field9 AS [Alarm Init], Field5 AS [Alarm End], CVDate(Field2) AS [Time]
FROM [Jet Info]
WHERE (Field3 LIKE 'ALARM' OR Field8 LIKE 'ALARM:') AND Field5 NOT LIKE 'Program' AND (Field9 NOT LIKE 'Program' OR ISNULL(Field9));
ich Referenzierung diese Abfrage in Excel direkt worden ursprünglich hatte, wurde aber nach wie vor die oben genannten Fehler bekommen, so habe ich versucht, die Abfrage stattdessen verweist.
qrySelData:
SELECT DISTINCTROW TOP 1 a.*
FROM [Process Info] AS a, [Complete Data] AS b
WHERE (((a.Date) Not In (SELECT [Date] FROM [Complete Data])) AND ((a.[Start Time]) Not In (SELECT [Start Time] FROM [Complete Data])));
Hier ist mein VBA-Code:
Private Sub CommandButton1_Click()
Refresh_Data
Dim objAccess As Object
Set objAccess = GetObject("C:\Users\******\Documents\Database21.accdb")
objAccess.Visible = False
objAccess.DoCmd.OpenQuery ("qrySelData")
objAccess.Quit
Set objAccess = Nothing
End Sub
die Unter in VBA wirft Lauffehler 3072 auf der objAccess.DoCmd.OpenQuery ("qrySelData")
Linie.
Jede Hilfe wäre willkommen - wenn Sie weitere Informationen benötigen, lassen Sie es mich wissen.
Sieht aus wie das Problem in der Verknüpfung ist: https://StackOverflow.com/Questions/170578/Operation-Must-use-an-Updatable-Query-303-Microsoft-Access Einige verschiedene Empfehlungen hier - eine ist in eine temporäre Tabelle einzufügen und dann daraus auszuwählen. Das scheint so zu sein, als würde es für dich funktionieren. –
@JacobH also, anstatt die Abfrage zu referenzieren, sollte ich eine Dummy-Tabelle für 'QryAllData' in die einfügen und dann verweisen, dass mit' QrySelData'? – bcbrwk
@JacobH Ich habe immer noch Probleme. Also habe ich eine temporäre Tabelle, auf die verwiesen wird; Wie führe ich die Abfrage aus, die ich verwende, um Daten in die temporäre Tabelle einzufügen? Das scheint momentan mein Hauptproblem zu sein. – bcbrwk