• Tạo report có chiều cao co dãn theo dữ liệu
  • RE: Noname, cho mình hỏi "Tạo report có chiều cao co dãn theo dữ liệu"

    ledangvan > 26-04-12, 10:35 AM

    (25-04-12, 10:52 PM)quoctrong_2311 Đã viết: mình đọc được bài của bạn viết về "Tạo report có chiều cao co dãn theo dữ liệu", mình mới tự mò học Access được 1 tuần, mình không biết mở phần nào trên report để copy đoạn code của bạn, bạn có thể hướng dẫn chi tiết cho mình không. ví dụ như: vào đâu, chọn dòng chữ gì VV.. Mình gà lắm, bạn đừng cười ngen.Tongue_smileTongue_smileTongue_smileTongue_smile . Thank bạn!

    Bạn vào mục Reports -> ấn chuột phải vào Report [Table1] - Chọn Design View -> Vào mục Detail ấn chuột phải vào Properties -> Trong mục Event -> Dòng On Print nhấp chuôt trái vào dấu ... nó sẽ hiện ra code
  • RE: Noname, cho mình hỏi "Tạo report có chiều cao co dãn theo dữ liệu"

    quoctrong_2311 > 30-04-12, 05:06 PM

    ac, vào rùi, mà có thấy gì đâu?
  • RE: Tạo report có chiều cao co dãn theo dữ liệu

    sagiang3888 > 19-09-12, 04:42 PM

    (09-08-10, 02:17 AM)Noname Đã viết: Trong khi làm report. Có những dữ liệu vượt quá chiều ngang của field trình bày. Nhưng nếu ta set cho field đó có khả năng can grow thì nó sẽ nhảy dòng, làm lệch các khung ta đã canh chỉnh.Những người có kinh nghiệm giải quyết bằng cách chừa 1 khoảng trống đủ lớn để không bị "rớt dòng" đại loại như thế! Tuy nhiên, nếu không có dữ liệu nào thừa rớt dòng thì khoảng trống đó lãng phí trong report!

    Vấn đề đặt ra là làm cách nào để report có thể tự do dãn chiều cao ở mỗi dòng khác nhau cho phù hợp với dữ liệu

    Mình gợi ý theo một hướng khác là ta dùng hàm line để vẽ các đối tượng draw trên report, như vậy bạn sẽ có các đường kẻ đứng co dãn theo field.
    Dưới đây là ví dụ mình sẽ vẽ hai đường thẳng đứng tự co dãn, bạn về tùy biến cho phù hợp nha

    Code:

    Mã:
    Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
            Me.Line (0, 0)-Step(0.01 * 567, 56 * 567), , BF
            Me.Line (3 * 567, 0)-Step(0.01 * 567, 56 * 567), , BF

    End Sub

    Copy dòng code vào thủ tục Detail_Print cuả report:
    - Bạn print preview sẽ có 2 đường thẳng rộng 0.01cm, chiều dài bằng chiều cao phần detail (đã co dãn, tối đa là 56cm). 2 đường có top-đỉnh là 0 cm, mép trái là 0cm và 3cm.

    - Code trong report của Access dùng đơn vị twip, 1cm=567twips
    Các đường ngang bạn chỉ cần vẽ 1 đường có Top=0, left=0 và chiều dài bằng chiều dài report ở phần detail.
    Copy 1 đường tương tự cho các Group Footer và Report Footer như vậy bạn đã có thể co giãn như ý rồi

    [Hình: reporttest.JPG]

    Download Demo

    em đã coppy y 2 câu vẽ line của noname nhung khi xem hay in ra thì không ra đường ngang như vậy mà lại ra 2 đường đứng với chiều cao bằng chiều cao của vùng dữ liệu?
  • RE: Tạo report có chiều cao co dãn theo dữ liệu

    cpucloi > 21-09-12, 04:14 PM

    Bạn sagiang3888 xem kỹ lại hướng dẫn, để có đường kẻ ngang bạn cần vẽ đường kẻ ngang vừa bằng giới hạn của tất cả các textbook ngay sát phía dưới các textbook
  • RE: Tạo report có chiều cao co dãn theo dữ liệu

    gialilama > 22-09-12, 03:49 PM

    Topic này thật là cần thiết trong quá trình làm báo cáo, các mem có thể cố gắng hoàn thiện.
    Trong thực tế một số trường có độ rộng lớn, để hiển thị hết dữ liệu khi làm report thì ta thường để 2 hay 3 dòng. Như vậy khi dữ liệu trong báo cáo chỉ có một dòng thì nhìn báo cáo rất thưa, mất tính mỹ quan.
    Điều quan trọng nhất là các chữ ký thường nhảy sang trang khác một mình. mỗi lúc như vậy lại quay trở lại design sửa. Nếu như vậy đối với nhưng file MDE thì người dùng làm thế nào?
    Rất mong các Mem chia sẻ vấn đề này:
  • RE: Tạo report có chiều cao co dãn theo dữ liệu

    sagiang3888 > 24-09-12, 05:38 PM

    "Bạn sagiang3888 xem kỹ lại hướng dẫn, để có đường kẻ ngang bạn cần vẽ đường kẻ ngang vừa bằng giới hạn của tất cả các textbook ngay sát phía dưới các textbook "
    Bác cpucloi chỉ tận tình dùm em, e k biết làm ạ.
  • RE: Tạo report có chiều cao co dãn theo dữ liệu

    cpucloi > 21-10-12, 07:35 PM

    Phần này của pác NoName: ..."Các đường ngang bạn chỉ cần vẽ 1 đường có Top=0, left=0 và chiều dài bằng chiều dài report ở phần detail.
    Copy 1 đường tương tự cho các Group Footer và Report Footer như vậy bạn đã có thể co giãn như ý rồi"...
  • RE: Tạo report có chiều cao co dãn theo dữ liệu

    hpolice26041993 > 13-07-16, 11:07 AM

    mọi người cho mình hỏi sao cái hàm này nó không chạy khi report lấy nguồn từ query là sao vậy???
  • RE: Tạo report có chiều cao co dãn theo dữ liệu

    cpucloi > 15-07-16, 08:51 AM

    Report lấy nguồn từ Table hoặc Query, và cái này chẳng liên quan gì đến nó cả, hjx

    Bạn xem đã làm đúng các bước chưa nhé?
  • RE: Tạo report có chiều cao co dãn theo dữ liệu

    NGÔ BẮP > 15-12-19, 09:19 PM

    (27-10-11, 01:55 PM)Noname Đã viết: Cú Pháp
    Mã:
    Line( Left, Top) - Step(Width, Height),Màu,BF
    Có thể thay BF bằng B (kẻ hình chữ nhật, tham số F để thêm màu sắc ruột hình chữ nhật).


    Me.Line (13 * 567, 0)-Step(0.01 * 567, 56 * 567), , BF

    Có nghĩa là: Kẻ một đường thẳng có Top =0, Left=13, rộng 0.01, chiều cao tùy theo chiều cao của detail nhưng tối đa là 56

    Các đơn vị trên tính bằng Cm

    (19-03-12, 11:04 PM)bwomdem Đã viết: Mình copy trên mạng cái sub này:

    Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
      Me.ScaleMode = 1
      Me.ForeColor = 0
      'Repeat the following line of code for each vertical line
      ' 1*1440 represents 1 inch
      Me.Line (0 * 1440, 0)-(0 * 1440, 14400) 'Draws line at Left Margin
      Me.Line (0.25 * 1440, 0)-(0.25 * 1440, 14400)
      Me.Line (3.0417 * 1440, 0)-(3.0417 * 1440, 14400)
      Me.Line (3.9167 * 1440, 0)-(3.9167 * 1440, 14400)
      Me.Line (4.9167 * 1440, 0)-(4.9167 * 1440, 14400)
      Me.Line (5.9063 * 1440, 0)-(5.9063 * 1440, 14400)
     
    End Sub

    Các bạn thay số đầu tiên (sau dấu mở ngoặc) bằng left của TextBox là chuẩn luôn.
    Good luck!

    (22-09-12, 03:49 PM)gialilama Đã viết: Topic này thật là cần thiết trong quá trình làm báo cáo, các mem có thể cố gắng hoàn thiện.
    Trong thực tế một số trường có độ rộng lớn, để hiển thị hết dữ liệu khi làm report thì ta thường để 2 hay 3 dòng. Như vậy khi dữ liệu trong báo cáo chỉ có một dòng thì nhìn báo cáo rất thưa, mất tính mỹ quan.
    Điều quan trọng nhất là các chữ ký thường nhảy sang trang khác một mình. mỗi lúc như vậy lại quay trở lại design sửa. Nếu như vậy đối với nhưng file MDE thì người dùng làm thế nào?
    Rất mong các Mem chia sẻ vấn đề này:

    Cho mình hỏi thêm, nếu report dãn lớn hơn 56 thì phải làm thế nào ạ??? Cảm ơn mọi người trước ạ!!!