excel'e form aktarma -2

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
tubaca
Üye
Mesajlar: 44
Kayıt: 24 Ağu 2004 10:30
Konum: Ankara
İletişim:

excel'e form aktarma -2

Mesaj gönderen tubaca »

merhabalar yine ben :oops:
ben sorunu hala tam olarak halledemedim.mege nin yolladıgı kodu kendime gore degistirdim ve iki bmp 'yi de birlestirdim.fakat durum pek hos degil.excel sayfası sadece 42.satıra kadar bmp yi eklıyor. dolayısıyla 2.bmp dosyası sıkısık bi sekil de gorunuyor."excelfile." dediğimde de hata veriyor.(excelfile in sayfa yuksekliğini degiştirsen olur gibime gelmişti ama olmadı)bu arada rich editlerin içeriğide bmp'de gozukmuyor.(plain özelliğini true yapmmama ragmem.halbuki diğer textlerin içeriği gorunuyor.)
yazdırma komutu için yazdıgım kod:

Kod: Tümünü seç

procedure TForm1.Yazdr2Click(Sender: TObject);
var //capture için
    MyBMP,m,m3 : TBitMap;
    MyJPEG : TJPEGImage;
    // excel için
    ExcelFile  :variant;
    ExcelSheet :variant;
  begin
    MyBMP:=TBitMap.Create;
      m:=TBitMap.Create;
     MyJPEG := TJPEGImage.Create;
  try
   form1.VertScrollBar.Position:=0;
     MyBMP:=Getformimage;
     form1.VertScrollBar.Position:=450;
     m:=Getformimage;

     MyBMP.SaveToFile(ExtractFilePath(Application.ExeName)+'Page.bmp');
     m.SaveToFile(ExtractFilePath(Application.ExeName)+'Page1.bmp');
      MyBMP.Canvas.CopyRect(rect(0,310,m.Width,m.Height),m.Canvas,rect(0,0,m.Width,m.Height));
      MyJPEG.Assign(myBMP);
     MyJPEG.SaveToFile(ExtractFilePath(Application.ExeName)+'Page.jpg');
  finally
     myBMP.Free;
     m.Free;
     MyJPEG.Free;
  end;

     ExcelFile:=createoleobject('excel.application');

     ExcelFile.workbooks.add;
     ExcelFile.activeworkbook.worksheets[1].Name := 'Resim';

     ExcelSheet:=ExcelFile.activeworkbook.worksheets[1].cells[1];

      ExcelFile.activeworkbook.worksheets[1].Pictures.
           Insert(ExtractFilePath(Application.ExeName)+'Page.jpg');

     ExcelFile.visible:=True;//Exceli acip verileri
     //ExcelFile.ActiveWorkbook.SaveAs('c:\b.xls', -4158, False);
     ExcelFile.ActiveWorkbook.Saved:=TRUE;
     //ExcelFile.ActiveWorkbook.SaveCopyAs('c:\d.xls');
     //ExcelFile.quit;
     ExcelFile:=Unassigned;


 end;
yardımcı olursanız cok sevinicem.iyi calısmalar...
TNU
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Kod: Tümünü seç

      MyBMP.Canvas.CopyRect(rect(0,303,m.Width,m.Height),m.Canvas,rect(0,303,m.Width,m.Height));
Yazığım kod satırını düzelt.

Kolay Gelsin...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Cevapla