EXCEL EXE

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

EXCEL EXE

Mesaj gönderen husonet »

Slmlar;

Arkadaşlar Excel dosyasını Exe nin içine nasıl gömebilirim. Bu konuda fikirlerinizi bekliyorum exe nin içinden Excell dosyasını çalıştırmam lazım bunu yapmak istememin sebebide Excel dosyasını exe üzerinden çağırdığımız zaman makro güvenlik sorgulaması aktif olmuyormuş.

Fikir ve Düşüncelerinizi bekliyorum.

İyi Çalışmalar.
En son husonet tarafından 21 Eki 2003 03:54 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7601
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Merhaba,

olayı tam anlamamakla birlikte WinExec ve ShellExecute kullanabilirsin. WinExec harici .exe'leri çalışıtırır, ShellExecute da bir dosyayı ilişkili programla açar, mesela bir .xls dosyasını aç dersen Excel ile açar.

Sitede ve forumda örnek çok.

Kolay gelsin.
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Bu benim için yeterli olabilir ama ben birde şunu merak etmiştim exenin içine bir Excel Dosyasını gömebilirmiyiz.
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7601
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Merhaba,

tabii ki herşeyi gömebilirsiniz .exe'ye. Ama bence gereksiz bir olay. Yapmak istediğiniz işi tam olarak anlatırsanız yardımcı olmaya çalışırız. Macro vs. demişsin ancak ShellExecute direk Excel ile o dosyayı açar. Macro vs. hepsi çalışması lazım.

Kolay gelsin.
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Toplam 94 sayfalık bir Excel dosyam var bunlar çalıştığım firamanın fiyat listesi ben bu listeyi yaparken kullanıcıya kolaylık sağlaması amacıyla VBA (Makro) kullandım her neyse ben bu Fiyat Listesini internette yayınlıyorum fakat Çeken kişiler bilgisayarlarında ki Excel in Makro güvenlik seviyesi yüksek olduğu için makrolar aktif olmuyor bende bir araştırma yaptım Araştırmam sonucunda da yalnızca bir exe üzerinden Excel dosyasını çağırırsam Excel dosyası açıldığı zaman makro güvenlik seviyesini dikkate almıyormuş bende Excel dosyamı bu şekilde müşterilerimin kullanımına sunarsam Makrolar aktif ve çalışır durumda olacak.

Umarım bu sefer açıklayıcı olabilmişimdir.

Ayrıca Mustafa Hocam ilgilendiğin için teşekkür ederim.
Berdem
Üye
Mesajlar: 431
Kayıt: 28 Tem 2003 12:28

Mesaj gönderen Berdem »

Merhaba
Ben rave veya quick report gibi yazılımlardan ziyade exceli kullanmayı tercih edecem.Çünkü kullanıcı kolaylığı sağladığını düşünüyorum.Artık kullanıcının printten ziyade her bilgisayarda kullanabilecek ve saklanması kolay office metalarını istiyeceğini düşünüyorum.Ben kendim için hazırladığım sayfa ve hücrelere yönlendirebileceğiniz bir kod örneğini gönderiyorum.

Kod: Tümünü seç

var
  Form1: TForm1;
  excel:variant;

implementation
uses COMObj;
{$R *.dfm}
başlangıca excel:variant ve uses COMObj; yerleştirin.

Kod: Tümünü seç

procedure TForm1.FormCreate(Sender: TObject);
begin
 excel:=CreateOleObject('excel.Application');//excel adında excel uygulaması oluştur.
 excel.Visible:=False;
 excel.Workbooks.Open['C:\Örnek.xls'];
 end;
Ben kendi programında excel örnek dosyasının açılışını form create koydum.

Kod: Tümünü seç

procedure TForm1.SpeedButton1Click(Sender: TObject);//Exele kayıt
var
ila:string;
top:double;
gun,ay,c,b:integer;
 begin
  b:=StrToInt(FormatDateTime('dd',DateTimePicker1.Date));
    case b of//excelde gün atlamaları var
    1..10: c:=7;
    11..20: c:=8;
    21..31: c:=9;
    end;
 yeni.Query2.ParamByName('asi').AsDate:=DateTimePicker1.Date;
 gun:=c+b;
 ay:=7+StrToInt(FormatDateTime('mm',DateTimePicker1.Date));
   yeni.Query2.First;
     while not yeni.Query2.Eof do begin
     ila:=yeni.Query2ADI.AsString;
     top:=yeni.Query2TOPLAM.Value;
     excel.Sheets[ila].Cells[gun,ay].Value:=top;
   yeni.Query2.Next;
 end;
excel.Sheets[Sayfa_Adi].Cells[Sutun,Satır].Value:=Hücreye_Eklenen_Deger; Bu satıra dikkatinizi çekmek istedim.EOF döngüsünden sonra bu formülü alarak çalıştırın inanıyorum macroya hiç ihtiyacınız kalmaz.
Ayrıca TurboPower office seti componentleri yeterince ihtiyacınızı karşılar.
Ayrıca aşagıdaki web adresinde excelin farklı kullanım alanları var İnceleyebilirsin.
http://www.advdelphisys.com/Code_Lib/ad ... #UnitIndex
En içten saygı ve sevgilerimle..
Cevapla