Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1796to1800
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Format aendert sich ungewollt

Format aendert sich ungewollt
03.12.2020 13:06:19
MRUTOR
Hallo zusammen,
habe ein Problem, bei dem ich einfach keine Loesung finden kann. Ich habe ein Excel tool, mit dem Daten aus einer SharePoint Liste eingelesen werden mit folgendem Code:

Sub Reimport_from_SPList_Today()
Dim cnt As ADODB.Connection
Dim rst As ADODB.Recordset
Dim mySQL As String, strUserName As String, strToday As String
Dim lngLastR As Long, lngLastC As Long, c As Long
strToday = Format(CDate(Date), "dd/mm/yyyy")
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("RAW DATA")
lngLastR = ws.Cells(Rows.Count, 2).End(xlUp).Row
lngLastC = ws.Cells(2, Columns.Count).End(xlToLeft).Column
If lngLastR > 2 Then ws.Range(ws.Cells(2, 1), ws.Cells(lngLastR, lngLastC)).Delete
Set cnt = New ADODB.Connection
Set rst = New ADODB.Recordset
mySQL = "SELECT * FROM [_vti_bin] WHERE [Title] = '" & strToday & "' AND [Associate] = '" &  _
UserName & "';"
With cnt
.connectionstring = "Provider=Microsoft.ACE.OLEDB.12.0;WSS;IMEX=0;RetrieveIds=Yes;DATABASE= _
https://avantorsciences.sharepoint.com/teams/MUSQMSDOCS;LIST={90B006A7-BC92-49CB-9E8D-1FE6B873E99F};"
.Open
End With
rst.Open mySQL, cnt, adOpenForwardOnly, adLockReadOnly
If Not (rst.BOF And rst.EOF) Then
ws.Cells(2, 1).CopyFromRecordset rst
End If
If CBool(rst.State And adStateOpen) = True Then rst.Close
Set rst = Nothing
If CBool(cnt.State And adStateOpen) = True Then cnt.Close
Set cnt = Nothing
End Sub

Das funktioniert soweit auch ganz gut. Die gesuchten Daten werden in einem Sheet eingefuegt, auf einem anderen Sheet werden diese dann mit Formeln ausgewertet. Das 2. Sheet ist in einer Art Kalenderform angelegt. Die Daten werden dann per Tag angezeigt. Dieses Sheet hat bestimmte Formate fuer die Anzeige. So z.B. in einigen Zellen ein benutzerdefiniertes Format: _(* #,##0_);_(* (#,##0);_(* "-"_);_(@_)
Dieses Tool wird von mehreren Usern benutzt. Jetzt passiert es bei manchen Usern (die erste komische Sache, nicht bei allen), dass in 3 Spalten dieses benutzerdefinierte Format geaendert wird in Datumsformat. Dies passiert aber auch nur in den Spalten I, X und Y. Und nur, in Zellen mit diesem speziellen Format.
Ich habe jetzt schon mal rausgefunden per Einzelschrittmodus, dass die Veraenderung passiert bei der Codezeile:

ws.Cells(2, 1).CopyFromRecordset rst

also in dem Moment, wenn die Daten in dem Datensheet eingetragen werden. Aber es gibt keinerlei Verbindung zwischen den beiden Sheets, ausser den Formeln im Auswertungssheet.
Gibt es vielleicht jemanden, der mir dieses Phaenomen erklaeren kann?
Vielen Dank schon mal.
Gruss Tor

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: vermutl. wird Textformat importiert? owT
03.12.2020 13:52:19
JoWE
AW: vermutl. wird Textformat importiert? owT
03.12.2020 14:13:45
MRUTOR
Hallo JoWE,
das ist auch richtig. Ja Text wird importiert. Aber das ist nicht das Problem, da dieser in einem separaten Modul mit Text in Spalten umgewandelt wird. Das Problem ist, dass sich das Zellformat in dem anderen Sheet veraendert. Nicht, dass es einen Fehler anzeigt. Und wie gesagt, passiert das nicht bei allen Benutzern. Bei anderen Benutzern funktioniert alles ohne Probleme.
Habe jetzt erst mal mit einem Workaround gearbeitet, indem ich das Format nachtraeglich wieder zuruecksetze. Aber das kann nicht die Loesung sein.
Gruss Tor
AW: vermutl. wird Textformat importiert? owT
03.12.2020 19:21:15
JoWE
Hallo Torsten,
kannst Du ein klärendes Beispiel (Arbeitsmaterial und Datenauszug der Sharepoint-Daten) hochladen?
Gruß
Jochen
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige