Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Dynamische Änderung des ersten Datensatzes einer Abfrage per VBA

Frage Microsoft Microsoft Office

Mitglied: stevensqwe

stevensqwe (Level 1) - Jetzt verbinden

23.03.2010, aktualisiert 22:48 Uhr, 7713 Aufrufe, 3 Kommentare

Hi!
Habe gerade Schwierigkeiten, eine Abfrage von mir zur Anzeige als Pivot Chart vorzubereiten. Durch meine Abfrage habe ich bereits die Daten für eine Wochenperiode herausgefiltert, muss allerdings noch den Aufsatzpunkt auf den Wochenanfang beziehen und nicht auf den vorherigen Datenpunkt, wofür ich den ersten Datensatz ändern muss, Leider bekomme ich einen Laufzeitfehler 3027, Aktulaisierennicht möglich, Datenbank oder Objekt schreibgeschützt. Könnt Ihr mir helfen?

Abfrageergebnis von Q_PivotRowNum:

RowNum StartDate StartTime EndDate EndTime PhaseLength LyoTasks
1 17.01.2010 23:00 18.01.2010 02:50 3:50 Waiting
2 18.01.2010 02:50 18.01.2010 06:00 3:10 Phase1
3 ...

Nun versuche ich, das StartDate auf den 18.01.2010 und die StartTime auf 00:00 zu setzen ud entsprechend die PhaseLength auf 2:50h...

Sub Q_PivotRowNum_change()
Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim strSQL As String


Set db = Application.CurrentDb
strSQL = "SELECT * FROM Q_PivotRowNum"
Set rst = db.OpenRecordset(strSQL, dbOpenDynaset)
rst.MoveFirst

If rst.NoMatch = True Then
MsgBox "K nicht gefunden"

Else

rst.Edit
rst.Fields("StartDate") = "18.01.2010"
rst.Fields("StartTime") = "00:00"
rst.Fields("PhaseLength") = "02:50"
rst.Update

End If

rst.Close
Set rst = Nothing
Set db = Nothing
End Sub

Warum bekomme ich hier den Laufzeitfehler 3027 und wie kann ich die Abfrage oder den Code ändern, um den ersten Datensatz zu ändern (und dann die Abfrage als PivotChart ausgeben zu können)?

Für Eure Hilfe wäre ich sehr dankbar!

Schönen Gruß,
stevens
Mitglied: SlainteMhath
24.03.2010 um 08:13 Uhr
Moin,

was Laufzeitfehler 3027 genau aussagt weis ich jetzt zwar nicht (bissl text wäre noch schön gewesen *g*), aber ich nehme an, das dein Recordset nicht "Updateable" ist.

Um das zu umgehen, musst Du

1) den zu ändernden Datensatz eindeutig identifizieren (Primary Key)
und
2) dann den Satz in der Original TABELLE ändern.

Abgesehn davon würde ich aus
01.
SELECT * FROM Q_PivotRowNum
ein
01.
SELECT TOP 1 * FROM Q_PivotRowNum ORDER BY ... DESC/ASC
machen.

lg,
Slainte
Bitte warten ..
Mitglied: 76109
24.03.2010 um 08:15 Uhr
Hallo stevensqwe!

Also, nach meinem Verständnis kann eine Abfrage-Tabelle die bereits anhand bestimmter Kriterien erstellt wurde, nicht überschrieben werden. Von daher, würde ich die Abfrage in eine neue normale Tabelle kopieren und diese Tabelle entsprechend bearbeiten.

Gruß Dieter
Bitte warten ..
Mitglied: stevensqwe
24.03.2010 um 11:57 Uhr
Herzlichen Dank Euch beiden!

Werde dies bei zukünftigen Datenmanipulationen per VBA dann auch so machen!

Für mein Problem hier habe ich festgestellt, dass ich versuche mit Kanonen auf Spatzen zu schießen: Hab eine Lösung gefunden, das gleiche über eine Abfrage zu erreichen:
Modifiziere hiermit den Aufsatzpunkt des ersten Datensatzes und belasse den Rest der Tabelle gleich...

SELECT T.RowNum, #01/18/2010# AS StartDate, #00:00# as StartTime, T.EndDate, T.EndTime, CDbl(T.EndDate+T.EndTime-StartDate-StartTime)*24 AS PhaseLength,T.LyoTasks,T.LotNumber, T.LyoNr
FROM Q_PivotRowNum AS T
WHERE T.StartDate < #01/18/2010#
UNION SELECT *
FROM Q_PivotRowNum AS T
WHERE T.StartDate >= #01/18/2010#;

Schönen Gruß und Danke für Eure Hilfe!
stevens
Bitte warten ..
Ähnliche Inhalte
Windows Server
AD-Änderungen erst nach Replikation !?
gelöst Frage von RicoPausBWindows Server9 Kommentare

kurze angefragt Wenn ich am DC unserer Niederlassung Änderungen vornehme, wie z.B. Gruppenzugehörigkeiten oder Anpassungen an der GPO oder ...

Datenbanken
MySQL - Anzahl der Datensätze in Abfrage verringern
Frage von mabue88Datenbanken4 Kommentare

Hallo, ich habe ein System, in dem dessen Benutzer diverse Aktionen ausführen können. Die von den Benutzern ausgelösten Aktionen ...

VB for Applications
SNMP Abfrage in EXCEL über VBA
Frage von SebastianLVB for Applications7 Kommentare

Hallo Zusammen, Erstmal zum Sachverhalt: Ich habe mehrere Drucker (ca. 50) die über SNMP ansprechbar sind. Mein Ziel ist ...

VB for Applications
VBA Code Änderung Access 2010
gelöst Frage von Dr.CornwallisVB for Applications6 Kommentare

Liebe Gemeinde, ein Kollege hat mir einmal einen VBA Code zur Ermittlung des 1. und 5. Arbeitstags eines Monats ...

Neue Wissensbeiträge
Microsoft Office

Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei

Anleitung von SarekHL vor 1 StundeMicrosoft Office2 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...

Erkennung und -Abwehr

Sicherheitslücke Spectre und Meltdown: Status prüfen

Anleitung von Frank vor 7 StundenErkennung und -Abwehr2 Kommentare

Nach all den Updates der letzten Woche sollte man unbedingt auch den Status prüfen, ob die Sicherheitslücken Spectre, Meltdown ...

Microsoft Office

Office 2010 Starter erneut auf einer frischen Windows-Version installieren

Tipp von Lochkartenstanzer vor 1 TagMicrosoft Office9 Kommentare

Moin, vor ein paar Tagen schlug bei mir ein Kunde auf, der sein Widnows 7 geschrottet und es inklusive ...

Datenbanken

Upgrade MongoDB 3.4 auf 3.6

Erfahrungsbericht von Frank vor 1 TagDatenbanken

Seit kurzem gibt es das 3.6 Update für die MongoDB: Sicherheit, das Sortieren, Aggregation und auch die Performance wurde ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

Drucker und Scanner
Gesucht DIN A3 Drucker
Frage von NebellichtDrucker und Scanner15 Kommentare

Hallo, ich möchte einen neuen DIN A3 Drucker kaufen. Um ab und zu, ca. 1 mal die Woche Farbausdrucke ...

iOS
Einladung vom iphone kalender
Frage von jensgebkeniOS15 Kommentare

Hallo Gemeinschaft, folgendes Problem - immer wenn ich von meinem Iphone einen Termin einztrage und diesem Termin Teilnehmer zuweise, ...

Batch & Shell
Dateien verschieben mit batch
gelöst Frage von michi-ffmBatch & Shell13 Kommentare

Hallo Zusammen hat jemand evtl eine Idee? Zunächst hier das Skript: Leider werden keine UNC-Pfade unterstüzt, kann mir jemand ...