Đăng Ký
Kết quả 1 đến 10 của 81

Threaded View

  1. #27
    Thành viên cấp 3
    Ngày tham gia
    Mar 2013
    Bài viết
    113
    Thanks
    64
    2 lượt trong 2 bài viết
    Trích dẫn Gửi bởi daocongdabl Xem bài viết
    Dim objExcelApp
    Set objExcelApp = CreateObject("Excel.Application")
    objExcelApp.Visible = True
    'ExcelExample.xls is to create before executing this procedure.
    'Replace with the real path of the file ExcelExample.xls.
    objExcelApp.Workbooks.Open "D:\baocao.xls "
    objExcelApp.Cells(2, 2).Value = SmartTags(" volt")
    objExcelApp.Cells(2,3).Value = SmartTags(" ampe")
    objExcelApp.Cells(2, 4).Value = SmartTags(" luu_luong")
    objExcelApp.ActiveWorkbook.SaveAs "D:\ bao cao + hàm ngày +hàm giờ là ok"

    objExcelApp.Workbooks.Close
    objExcelApp.Quit


    Set objExcelApp = Nothing


    code trên test chạy ok với wincc flexible ,wincc chưa thử ,nhưng mình thấy phần trên code cũng giống hệt wincc thôi
    bạn phải tạo 1 bít xung từ phần mềm hay từ wincc cũng ok
    cứ 1 phút hoặc 1 giờ... thì gọi code một lần ,cứ 1 lần gọi thì thì wincc ghi giá trị xuống exel(kiểu này thích hợp xuất theo phiếu báo cáo)
    còn muốn xuất kiểu data thì thêm chút mắm muối vào code trên cứ 1 lần bít xung on thì số liệu từ wincc sẻ ghi xuống 1 hàng ngang tương ứng
    và cứ thế tạo xung 24 lần (1 lần là tương ứng 1 giờ )thì có số liệu trong bảng ghi xuống exel báo cáo đầy đủ cả 24 hàng tương ứng 1 giờ
    còn bạn thấy dòng code "D:\ bao cao + hàm ngày +hàm giờ là ok"
    nói lên là tên file lưu trử sẻ bằng ngày tháng năm .nếu qua ngày hôm sau sẻ tự động có 1 file khác tương ứng thôi

    chúc bạn thành công

    nói chung mấy kiến thức này tự mình sẻ ngâm lấy đi ,nó là kiến thức nâng cao của hệ thống scada
    nên hầu như không ai chỉ cụ thể đâu ,chỉ đúng hướng cho mình ngâm cứu là quá ok rồi ,chẳng qua gì nồi cơm thôi các bác ạ
    anh ơi . a có thể cho em hỏi là . nếu muốn xuất báo cáo từng ngày . mỗi ngày hoặc mỗi giờ nó tự xuất 1 file riêng lẻ . em ko hiểu cách dùng lệnh "ActiveWorkbook.Saveas " lém ạ .
    Dim EportExcel,Bom1,Bom2,Dem1 ' khai bao 5 bien

    Set Bom1 =HMIRuntime.Tags("Bom1")
    Set Dem1 =HMIRuntime.Tags("Dem1")
    Set Bom2 =HMIRuntime.Tags("Bom2")
    ' doc du lieu cua Tags "Bom1...."
    Bom1.Read

    Set EportExcel = CreateObject("Excel.Application")
    'EportExcel.Visible = True ' mo Excel
    EportExcel.Workbooks.Open "C:\Users\Vinh\Desktop\vinh.xlsx" ' mo file Excel theo duong dan "C:\Users\Vinh\Desktop\vinh.xlsx
    EportExcel.Cells( 12 , 5).Value = Now
    'EportExcel.Cells( Dem.Value, 2).Value = Hour (Time)& ":" &Minute(Time)& ":" &Second (Time)&"_"&Day(Date)&"/"&Month(Date)&"/"&Year(Date)
    EportExcel.Cells( 12 , 6).Value = Bom1.Value
    EportExcel.Cells( 13 , 6).Value = Bom2.Value
    EportExcel.ActiveWorkbook.Save ' luu file Excel
    'EportExcel.ActiveWorkbook.SaveAs "D:\vinh\Minute(Time)$ &Second (Time)& &Day(Date).xlsx
    EportExcel.ActiveWorkbook.Saveas "E:\vinh" & Minute(Time)&Second (Time)&Day(Date) & ".xlsx"
    EportExcel.Workbooks.Close
    EportExcel.Quit ' dong excel



    'If Dem1.Value<>0 & Bom1.Value=0 Then
    'Dem1.Value=0
    'End if
    Set EportExcel = Nothing
    Lần sửa cuối bởi vinhtdh, ngày 07-11-2015 lúc 06:50 PM. Lý do: sfeffe

Tag của Chủ đề này

Đánh dấu

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •  
Back to Top