AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Schreibschutz in Excel

Ein Thema von XHelp · begonnen am 29. Jan 2005 · letzter Beitrag vom 30. Jan 2005
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von XHelp
XHelp

Registriert seit: 12. Jul 2004
Ort: Duisburg
172 Beiträge
 
Delphi 6 Enterprise
 
#1

Schreibschutz in Excel

  Alt 29. Jan 2005, 20:00
Hallo!

Ich muss mittels delphi eine Excel mappe schreibgeschützt machen. Ich habe zwar verstanden, wie man mit OLE eine xls datei öffnet, aber wie kann ich schreibschutz draufmachen?

Danke!
Alex
Von allen Dingen die mir verloren gegangen,
hab ich am meisten an meinem Verstand gehangen
  Mit Zitat antworten Zitat
Keldorn

Registriert seit: 6. Mär 2003
Ort: Meißen
876 Beiträge
 
Delphi 10.1 Berlin Professional
 
#2

Re: Schreibschutz in Excel

  Alt 29. Jan 2005, 20:58
wie immer in solchen sachen: ein makro aufzeichnen

Delphi-Quellcode:
procedure TForm1.Button_ExcelSchutzClick(Sender: TObject);
Var flcid:Cardinal;
    _bool,_password:olevariant;
begin
  flcid:=GetUserDefaultLCID;
  try
    ExcelApplication1.Connect;
    ExcelApplication1.Visible[flcid]:=true;
    ExcelApplication1.UserControl:=true;

    ExcelWorkbook1.ConnectTo(ExcelApplication1.ActiveWorkbook);
    ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Sheets.Item[1] as ExcelWorkSheet);

    //excel-Tabellenblatt schützen, vieles ist optional, auch das password
    _bool:=true;
    _password:='Passwort';
    ExcelWorksheet1.Protect(_password,_bool,_bool,_bool);
    //oder, ohne die workbooks und worksheets (die beiden connects kannst du dir sparen)
    //(ExcelApplication1.ActiveSheet as ExcelWorkSheet).Protect(_password,_bool,_bool,_bool,emptyparam,flcid);
    //Schutz aufheben
    //ExcelWorksheet1.unProtect(_password);

    ExcelWorksheet1.Disconnect;
    ExcelWorkbook1.Disconnect;
    ExcelApplication1.Disconnect;
  except
  end;
end;
Mfg Frank

Lükes Grundlage der Programmierung:
Es wird nicht funktionieren
(Murphy)
  Mit Zitat antworten Zitat
Benutzerbild von XHelp
XHelp

Registriert seit: 12. Jul 2004
Ort: Duisburg
172 Beiträge
 
Delphi 6 Enterprise
 
#3

Re: Schreibschutz in Excel

  Alt 29. Jan 2005, 21:31
Danke!
Alex
Von allen Dingen die mir verloren gegangen,
hab ich am meisten an meinem Verstand gehangen
  Mit Zitat antworten Zitat
Benutzerbild von XHelp
XHelp

Registriert seit: 12. Jul 2004
Ort: Duisburg
172 Beiträge
 
Delphi 6 Enterprise
 
#4

Re: Schreibschutz in Excel

  Alt 29. Jan 2005, 22:07
Hab mich zu früh gefreut... Es sind nicht genug parameter da. Mein quelltext:

Code:
procedure TForm1.Button1Click(Sender: TObject);
var
xls, xlw: Variant;
begin
{load MS Excel}
xls := CreateOLEObject('Excel.Application');

{open your xls-file}
xlw := xls.WorkBooks.Open(FileName := 'c:\book1.xls', Password := '', ReadOnly := True);
{save with other file name}
xlw.Protect('lala',true,true,true);
xlw.SaveAs(FileName := 'c:\book3.xls', Password := 'test');

{unload MS Excel}
xlw := UnAssigned;
xls := UnAssigned;

end;
Aber wenn ich auf den Button klicken, tritt ein fehler auf.
Welche paremeter gibts bzw. wo kann ich das nachgucken?

Danke!
Alex
Von allen Dingen die mir verloren gegangen,
hab ich am meisten an meinem Verstand gehangen
  Mit Zitat antworten Zitat
Keldorn

Registriert seit: 6. Mär 2003
Ort: Meißen
876 Beiträge
 
Delphi 10.1 Berlin Professional
 
#5

Re: Schreibschutz in Excel

  Alt 29. Jan 2005, 22:09
mein Bsp war für die Serverkompos.

bei welcher Zeile tritt der Fehler auf?

Lükes Grundlage der Programmierung:
Es wird nicht funktionieren
(Murphy)
  Mit Zitat antworten Zitat
Benutzerbild von XHelp
XHelp

Registriert seit: 12. Jul 2004
Ort: Duisburg
172 Beiträge
 
Delphi 6 Enterprise
 
#6

Re: Schreibschutz in Excel

  Alt 29. Jan 2005, 22:16
xlw.Protect('lala',true,true,true);

Er sagt: "Falsche anzahl von parameter"
Alex
Von allen Dingen die mir verloren gegangen,
hab ich am meisten an meinem Verstand gehangen
  Mit Zitat antworten Zitat
Keldorn

Registriert seit: 6. Mär 2003
Ort: Meißen
876 Beiträge
 
Delphi 10.1 Berlin Professional
 
#7

Re: Schreibschutz in Excel

  Alt 29. Jan 2005, 22:28
das was ich oben gezeigt habe, war der Blattschutz, das was du jetzt hast, ist der arbeitmappenschutz.
xlw.Protect('lala',true,true);
Zitat:
Welche paremeter gibts bzw. wo kann ich das nachgucken?
in der VB hilfe.
bei den arbeitmappen hat protect nur 3 parameter.

Mfg Frank

Lükes Grundlage der Programmierung:
Es wird nicht funktionieren
(Murphy)
  Mit Zitat antworten Zitat
Benutzerbild von XHelp
XHelp

Registriert seit: 12. Jul 2004
Ort: Duisburg
172 Beiträge
 
Delphi 6 Enterprise
 
#8

Re: Schreibschutz in Excel

  Alt 29. Jan 2005, 22:34
Ja, mit 3 klappt es, aber:
Er fragt das passwort gleich beim laden ab und es muss ja nur schreibgeschützt sein
Wenn ich lala eingeben, dann sagt er mir: falsches kennwort.
Alex
Von allen Dingen die mir verloren gegangen,
hab ich am meisten an meinem Verstand gehangen
  Mit Zitat antworten Zitat
Keldorn

Registriert seit: 6. Mär 2003
Ort: Meißen
876 Beiträge
 
Delphi 10.1 Berlin Professional
 
#9

Re: Schreibschutz in Excel

  Alt 29. Jan 2005, 22:41
Zitat von XHelp:
Ja, mit 3 klappt es, aber:
Er fragt das passwort gleich beim laden ab und es muss ja nur schreibgeschützt sein
Wenn ich lala eingeben, dann sagt er mir: falsches kennwort.
Zitat:
test
du hinterlegst beim speichern "test" als passwort. Dann bekommst du die Datei gar nicht erst auf. Schützt du nur die Mappe, kannst du dir sie wenigstens noch anschauen. mit dem Blattschutz (meine obige variante) könntest du auch Teilbereiche schützen, der Nutzer könnte dann nur in bestimmte Zellen Werte eintragen, ist auch recht nützlich.
Du kannst eine Excel-mappe in verschiedenster Art und Weise schützen

wenn du nur einen Schreibschutz willst, nimm den arbeitsmappenschutz oder Blattschutz

Lükes Grundlage der Programmierung:
Es wird nicht funktionieren
(Murphy)
  Mit Zitat antworten Zitat
Benutzerbild von XHelp
XHelp

Registriert seit: 12. Jul 2004
Ort: Duisburg
172 Beiträge
 
Delphi 6 Enterprise
 
#10

Re: Schreibschutz in Excel

  Alt 30. Jan 2005, 13:25
Zitat von Keldorn:
du hinterlegst beim speichern "test" als passwort. Dann bekommst du die Datei gar nicht erst auf.
wall: bin ich blö.... ähh... unaufmerksam ^__^
Zitat von Keldorn:
Schützt du nur die Mappe, kannst du dir sie wenigstens noch anschauen. mit dem Blattschutz (meine obige variante) könntest du auch Teilbereiche schützen, der Nutzer könnte dann nur in bestimmte Zellen Werte eintragen, ist auch recht nützlich.
ich probiere es mal... aber wie kann ich eine datei aussuchen? Ich muss so um die 80 dateien schreibgeschützt machen...

Danke!
Alex
Von allen Dingen die mir verloren gegangen,
hab ich am meisten an meinem Verstand gehangen
  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 09:31 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