AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Excel Automation langsam ohne Internetzugang
Thema durchsuchen
Ansicht
Themen-Optionen

Excel Automation langsam ohne Internetzugang

Ein Thema von BigAl · begonnen am 28. Mär 2023 · letzter Beitrag vom 28. Mär 2023
Antwort Antwort
Seite 1 von 2  1 2      
BigAl

Registriert seit: 6. Sep 2008
Ort: Kehl
495 Beiträge
 
Delphi 12 Athens
 
#1

Excel Automation langsam ohne Internetzugang

  Alt 28. Mär 2023, 10:13
Hallo zusammen,

ich habe folgendes Problem:

Ich starte z.B. Excel mit
Excel := CreateOleObject('Excel.Application') Danach nutze ich das erzeugt Ole Object für diverse Interaktionen. Erzeugen von Worksheets, befüllen von Zellen usw. Alles ist im Prinzip sehr performant. Allerdings nur, solange der Rechner einen guten Internetzugang hat. Bin ich z.B. über langsames WLAN verbunden, dann hängt Excel am Anfang sehr lange ehe es wieder mit der normalen Performance weiter geht.

Interessant dabei ist, dass es solange schnell ist, bis ich zum ersten mal das Aussehen / Format einer Zelle ändere:
Delphi-Quellcode:
  Sheet := Excel.ActiveSheet;
  Sheet.Name := 'PARAMS';

  // General Parameters

  Sheet.Cells[Line, 1] := 'EXPORT PARAMETERS';
  Sheet.Cells[Line, 1].Font.Bold := True; // Hier eine laaaange Pause...
  Sheet.Range[Sheet.Cells[Line, 1], Sheet.Cells[Line, 2]].MergeCells := True;
In obigem Beispiel braucht Excel für die Zeile "Sheet.Cells[Line, 1].Font.Bold := True" extrem lange zur Ausführung (30 Sekunden oder so). Danach geht es mit vollem Tempo weiter, egal was ich mache.

Ich habe schon versucht alle Plugins zu deaktiviere, testweise mal verschiedene "Trusted"-Einstellungen deaktiviert usw.

Habe ich gar kein Internet, dann hängt er an oben genannter Stelle etwa eine Minute ehe es normal weiter geht. Da die Applikation auch offline genutzt wird ist das natürlich nicht gut.

Woran kann das liegen? Hat irgendwer eine Idee wie man den Hänger weg bekommt?
Man sollte nie so viel zu tun haben, dass man zum Nachdenken keine Zeit mehr hat. (G.C. Lichtenberg)
  Mit Zitat antworten Zitat
Frickler

Registriert seit: 6. Mär 2007
Ort: Osnabrück
563 Beiträge
 
Delphi XE6 Enterprise
 
#2

AW: Excel Automation langsam ohne Internetzugang

  Alt 28. Mär 2023, 10:36
Das ich das richtig verstehe: Excel wird nicht etwa über eine VPN Verbindung o.ä. gestartet, sondern lokal, die Daten liegen auch lokal (also nicht auf einem Netzwerkshare), und es geht um die Internetverbindung des PCs, wo Du vor sitzt?
  Mit Zitat antworten Zitat
BigAl

Registriert seit: 6. Sep 2008
Ort: Kehl
495 Beiträge
 
Delphi 12 Athens
 
#3

AW: Excel Automation langsam ohne Internetzugang

  Alt 28. Mär 2023, 10:46
Das ich das richtig verstehe: Excel wird nicht etwa über eine VPN Verbindung o.ä. gestartet, sondern lokal, die Daten liegen auch lokal (also nicht auf einem Netzwerkshare), und es geht um die Internetverbindung des PCs, wo Du vor sitzt?
Genau richtig. Excel lokal. Daten kommen aus meiner Applikation. Ich brauche eigentlich keine Internetverbindung.

Das befüllen von Zellen, erzeugen von Sheets etc. geht sehr schnell. Nehme ich alle Formatierungen raus, dann geht alles ohne Probleme. Nur wenn ich zum ersten mal das Aussehen einer Zelle ändere (z.B. Font.Bold := True) dann hängt die Applikation für eine lange Zeit. Aber nur beim ersten mal. Danach kann ich machen was ich will, alles bleibt schnell.

Funktionen wie ".NumberFormat = '0.0'" oder "MergeCells" usw. laufen alle schnell durch. Wie es aussieht sind es nur die Formatierungen von Schriften. Also:

Font.Size
Font.Bold
use.

Und eben nur beim ersten mal.
Man sollte nie so viel zu tun haben, dass man zum Nachdenken keine Zeit mehr hat. (G.C. Lichtenberg)
  Mit Zitat antworten Zitat
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Excel Automation langsam ohne Internetzugang

  Alt 28. Mär 2023, 11:07
Hallo,
ich kenne das Problem von Druckertreibern. Ist auf dem System ein Netzwerkdrucker als default?
Wenn ja versuche mal einen lokalen Drucker als default. Eventuell einen Drucker installieren mit print to file oder so)
Fritz Westermann
  Mit Zitat antworten Zitat
Frickler

Registriert seit: 6. Mär 2007
Ort: Osnabrück
563 Beiträge
 
Delphi XE6 Enterprise
 
#5

AW: Excel Automation langsam ohne Internetzugang

  Alt 28. Mär 2023, 11:15
Microsoft will Deine "Experience" verbessern und lädt was von der eigenen Seite herunter. Vielleicht, um Tipps zu geben für schönere Formatierung oder so. Keine Ahnung.

Hast Du mal in die Datenschutzeinstellungen geschaut ("Trust Center")? Da gibts wohl diverse Anhakfelder, mit denen solche Zugriff unterbunden werden können. Ich habe selbst kein Excel, aber eine kurze Recherche ergab diesen Tipp.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.014 Beiträge
 
Delphi 12 Athens
 
#6

AW: Excel Automation langsam ohne Internetzugang

  Alt 28. Mär 2023, 11:50
Wie es aussieht sind es nur die Formatierungen von Schriften.
Vielleicht werden dabei die installierten Schriften geladen. Ich kenne das von Ladezeiten bestimmter MMX-Dialoge, bei denen eine Font-Combobox gefüllt wird. Das dauert je nach Anzahl installierter Fonts schonmal etwas länger.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
BigAl

Registriert seit: 6. Sep 2008
Ort: Kehl
495 Beiträge
 
Delphi 12 Athens
 
#7

AW: Excel Automation langsam ohne Internetzugang

  Alt 28. Mär 2023, 12:49
Hallo,
ich kenne das Problem von Druckertreibern. Ist auf dem System ein Netzwerkdrucker als default?
Wenn ja versuche mal einen lokalen Drucker als default. Eventuell einen Drucker installieren mit print to file oder so)
Genau das war's. Habe mal den "Microsoft Print to PDF" als Standard gesetzt und jetzt gibt es keine Hänger mehr.

Danke! Ich habe da schon eine Weile gesucht. Der Drucker ist mir irgendwie nicht eingefallen .
Man sollte nie so viel zu tun haben, dass man zum Nachdenken keine Zeit mehr hat. (G.C. Lichtenberg)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.149 Beiträge
 
Delphi 12 Athens
 
#8

AW: Excel Automation langsam ohne Internetzugang

  Alt 28. Mär 2023, 20:50
Excel-Dateien (*.xlsx) sind inzwischen eine ZIP mit vielen XML-Dateien darin
und diese XML benutzen externe Schemata.

Code:
[Content_Types].xml
    <Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types">

_rels\.rels
    <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
    <Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties" Target="docProps/app.xml"/>
    <Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/>
    <Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="xl/workbook.xml"/>

docProps\app.xml
    <Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties"
                xmlns:vt="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes">

docProps\core.xml
    <cp:coreProperties xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties"
                       xmlns:dc="http://purl.org/dc/elements/1.1/"
                       xmlns:dcterms="http://purl.org/dc/terms/"
                       xmlns:dcmitype="http://purl.org/dc/dcmitype/"
                       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

.
.
.
Kann auch sein, dass gewisse Schemata nachgeladen werden, wenn man gewisse Funktionalitäten verwendet.

Du könntest auch mal nachsehn, was für Netzwerkverbindungen aufgehn, wenn du das machst, was du machen willst.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (28. Mär 2023 um 20:56 Uhr)
  Mit Zitat antworten Zitat
BigAl

Registriert seit: 6. Sep 2008
Ort: Kehl
495 Beiträge
 
Delphi 12 Athens
 
#9

AW: Excel Automation langsam ohne Internetzugang

  Alt 28. Mär 2023, 21:04
Excel-Dateien (*.xlsx) sind inzwischen eine ZIP mit vielen XML-Dateien darin
und diese XML benutzen externe Schemata.
Ist schon klar. Ich mach die regelmäsig auf wenn Kollegen wieder mal kommen und das Passwort für ihre geschützten Arbeitsblätter vergessen haben oder irgendwelche "toten" Verknüfungen in der Excel sind welche vom Verknüfungsmanager nicht gefunden werden aber beim Öffnen Fehlermeldungen erzeugen.

Aber wie oben geschrieben: Das Problem war der Netzwerkdrucker. Wenn der nicht gefunden wird, dann gönnt sich das System eine laaange Pause...
Man sollte nie so viel zu tun haben, dass man zum Nachdenken keine Zeit mehr hat. (G.C. Lichtenberg)
  Mit Zitat antworten Zitat
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Excel Automation langsam ohne Internetzugang

  Alt 28. Mär 2023, 21:39
[QUOTE=BigAl;1520440]
Excel-Dateien (*.xlsx) sind inzwischen eine ZIP mit vielen XML-Dateien darin
und diese XML benutzen externe Schemata.
Hi Alex,
Seit wann hat man Zeit vorhergiehende Antworten zu lesen wenn man Lösungen im Sekundentakt raushaut?

Fritz
Fritz Westermann
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:16 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz