`
rawbenny
  • 浏览: 14289 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
文章分类
社区版块
存档分类

将数据表导出成excel

阅读更多
[转][http://tb.blog.csdn.net/TrackBack.aspx?PostId=1844264]

首先是安装 gem install spreadsheet-excel

其次 在script 文件夹中新建一个叫export的文件,里面代码如下:

#!/usr/bin/env ruby

require File.dirname(__FILE__) + '/../config/environment'
require "spreadsheet/excel"
include Spreadsheet
    users=User.find_by_sql("select count(*) from users where created_at < '#{Time.now.strftime("%Y-%m-%d")}' and created_at > '#{1.day.ago.strftime("%Y-%m-%d")}'")
   
    workbook = Excel.new("#{RAILS_ROOT}/public/reports/report_#{Time.now.strftime('%Y-%m-%d')}.xls")
    worksheet = workbook.add_worksheet("Report of #{1.day.ago.strftime('%Y-%m-%d')}")
   
    worksheet.write(0, 0, "#{1.day.ago.strftime('%Y-%m-%d')}")
   
    worksheet.write(1, 0, "Daily Registered users")
   
    worksheet.write(2, 0, "#{users[0].count.to_i}")
   
    workbook.close
第三:执行ruby script/export. 到public文件夹中看一下,是不是多了一个excel表格。

有时我们需要将导出来的表格作为邮件附件发送出去。那么我们需要在上面的代码底部,加入这段:
  Notifier.deliver_export
model代码如下:

class Notifier < ActionMailer::Base
 
  def export
    @recipients      = "XXX@gmail.com" #收件人邮箱
    #@cc              = "XXX@sina.com","XXX@163.com" #抄送人邮箱
    @subject         = "#{Time.now.strftime('%Y-%m-%d')} data"
    @body            = ""
    @data            = ""
    File.open("#{RAILS_ROOT}/public/reports/report_#{Time.now.strftime('%Y-%m-%d')}.xls", "rb").each { |fp| @data<<fp }
    attachment :content_type =>"application/vnd.ms-excel", 
      :filename => "export_#{Time.now.strftime('%Y-%m-%d')}.xls" , 
      :body => @data
  end
end
这样就实现了使用spreadsheet-excel 把数据导入到Excel表格中,并且作为邮件附件发送给别人了。
分享到:
评论

相关推荐

    将mysql数据表导出成Excel

    将mysql中的数据导出成Excel,很好用的类,测试成功!

    C#利用Response流将数据库数据导出成Excel

    C#利用Response流将数据库数据导出成Excel C#语言是一种功能强大且灵活的编程语言,广泛应用于各种软件开发领域。其中,数据导出功能是许多软件系统中必不可少的功能之一。在本文中,我们将探讨如何使用C#语言将...

    将pb数据表导出excel

    标题中的“将pb数据表导出excel”是指在PowerBuilder(PB)9.0环境中,将数据窗口(DataWindow)中的数据转换并保存为Excel电子表格格式的过程。PowerBuilder是一款强大的客户端/服务器应用程序开发工具,它支持数据...

    利用VFP中将所有数据表导出到EXCEL

    OLE技术允许不同应用程序之间共享数据和功能,对于本例来说,就是利用VFP控制Excel进行数据导出。 ##### 3.2 获取表结构信息 为了准确地将数据表导出到Excel中,首先需要获取该表的基本结构信息,包括字段的数量和...

    C#把数据导出为Excel格式

    ### C#将数据导出为Excel格式的知识点详解 #### 一、导出到Excel的基本原理与步骤 在本示例中,我们主要探讨如何使用C#编程语言将数据导出为Excel格式。该示例提供了较为完整的实现过程,包括用户界面交互、Excel...

    java 将数据导出到Excel中

    在Java开发中,将数据导出到Excel是一种常见的需求,特别是在数据分析、报表生成或数据交换等场景下。Excel因其易用性和丰富的格式设置能力,成为处理结构化数据的理想选择。本篇文章将深入探讨如何利用Java实现这一...

    PB数据窗口导出Excel

    标题中的“PB数据窗口导出Excel”指的是在PowerBuilder(PB)环境中,使用数据窗口对象将数据导出到Microsoft Excel格式的过程。数据窗口是PowerBuilder中的一个重要组件,它用于显示和操作数据库中的数据,提供了...

    C#DataGridView多维合并表头,DataGridView多维表导出至EXCEL(源码范例)

    在本资源中,我们探讨的是如何处理`DataGridView`的多维表头以及如何将多维表格的数据导出到Excel文件中。这个过程涉及到几个关键的知识点,包括`DataGridView`的自定义渲染、多级表头的实现以及数据导出的逻辑。 ...

    SpringBootMybatis+poi+Thymeleaf实现excel文件数据导入到数据库以及从数据库将数据导出成excel.zip

    在本项目中,"SpringBootMybatis+poi+Thymeleaf实现excel文件数据导入到数据库以及从数据库将数据导出成excel.zip",我们主要关注的是如何利用Java技术栈来处理Excel文件,并与数据库进行交互。以下是相关知识点的...

    将simulink示波器数据导出到excel表格教程

    在MATLAB Simulink环境中,将示波器数据导出到Excel表格是一项常见的需求,这有助于数据的存储、分析和进一步处理。以下是一份详细的步骤教程: 首先,我们需要准备一个Simulink模型,在模型中添加必要的组件。核心...

    Qt将Sqlite中的数据导出为Excel

    本篇我们将探讨如何利用Qt将SQLite数据库中的数据导出到Excel格式,这是一个实用的功能,尤其对于需要数据分析和报告的项目。 首先,让我们理解这个过程的基本步骤: 1. **连接SQLite数据库**:使用`QSqlDatabase`...

    Qt中将QTableView中的数据导出为Excel文件实例

    原文为《Qt中将QTableView中的数据导出为Excel文件&gt;&gt;,地址http://blog.csdn.net/superjoel/article/details/5321404,资源比较难下载,我下载好帮作者上传下。实例可用,简单易懂,对于QTableView导出为excel...

    nodejs将mysql数据库中的数据导出成excel表格文件

    接下来,要将数据库中的数据导出为Excel文件,我们可以使用`xlsx`或` SheetJS `库。`xlsx`库是一个强大的工具,能够读取、写入多种电子表格格式,包括XLS、XLSX和CSV等。在`excel.js`文件中,开发者可能定义了函数,...

    Data From Keil to Excel (keil数据导出至excel)

    为了将这些数据导出到Excel,我们需要在KEIL中设置数据导出选项。通常,KEIL可以通过仿真器或调试器的内存查看器来查看和复制内存数据。在内存窗口中选择要导出的数据范围,然后通过复制(Ctrl+C)将数据粘贴到Excel...

    sqllite数据导入导出到Excel

    另一种方法是使用专门的数据迁移工具,如SQLite Manager(Firefox插件)或SQLiteStudio,它们通常提供数据导出功能,包括导出到Excel格式。 对于Excel数据导出到SQLite,流程基本相反。先打开Excel文件,将数据保存...

    将数据导成excel

    在IT行业中,将数据导出为Excel文件是一种常见的需求,特别是在数据分析、报表生成以及数据交换等场景中。这里,我们关注的是如何利用Struts2框架将数据转化为Excel格式。Struts2是一个流行的Java web开发框架,它...

    Java导出数据到Excel文件中(支持多表头)

    在Java编程中,导出数据到Excel文件是一项常见的任务,特别是在数据分析、报表...通过以上步骤,我们可以构建一个灵活且高效的Java程序,将数据库中的数据导出为具有多级表头的Excel文件,满足数据分析和报告的需求。

    easyui+数据导出为Excel

    在IT行业中,前端数据处理和展示是至关重要的,特别是在企业级应用中,用户往往需要将大量数据导出为便于分析的格式,如Excel。本文将详细介绍如何在基于EasyUI的前端框架下实现数据导出为Excel的功能。 EasyUI是一...

    数据导出到Excel.html

    数据导出到Excel.html ,数据导出到Excel.html

Global site tag (gtag.js) - Google Analytics