[EXCEL][STEP BY STEP]使用超级连接进行数据查询

需求:
     通过建立单元各的超级连接,点击链接后,自动对另一表格中的数据进行查询。
    原CSDN帖子: http://topic.csdn.net/u/20070929/14/bb295ab6-d473-4251-92df-6ada9f73de21.html

设计过程:
    假设一销售数据,见下图:


我们希望通过Sheet1中的数据建立超级链接,点击后,对Sheet2中的数据进行查询(在此,我们采用自动筛选)。主要步骤如下:

  1. 获取自动筛选的代码。我们可以直接使用录制宏获取自己所需的代码(当然,如果有能力自己写代码,这些步骤就可以跳过了)。
    1. 把Sheet2中的数据进行自动筛选(数据/筛选/自动筛选),然后切换到Sheet1,工具/宏/录制,启动宏录制
    2. 切换到Sheet2,进行数据筛选数据筛选,在此,我们对“销售数据”列进行筛选
    3. 筛选后,点击宏录制工具栏上的“停止录制”按钮,停止录制
    4. 工具/宏/Virtual Basic 编辑器,查看“模块1”的代码,得到如下VBA数据:
          Sheets( " Sheet2 " ).Select
          Selection.AutoFilter Field:
      = 1 , Criteria1: = "2007年3月"
  2. 建立超级链接
    1. 在Sheet1中,现设置A1和A2单元格的超级连接,都设将其置链接到自己,及分别链接到Sheet1!A1和Sheet1!A2
    2. 选中A1:A2,光标到选择区又下角,下拉数据,使用数据填充,得到其它数据(自动完成超级链接)。
  3. 修改超级连接点击事件
    1. 工具/宏/Virtual Basic 编辑器,修改WorkSheet的FollowHyperlink事件,使用录制宏得来的代码,并适当修改如下:
      Private   Sub  Worksheet_FollowHyperlink(ByVal Target  As  Hyperlink)
          Sheets(
      " Sheet2 " ).Select
          Selection.AutoFilter Field:
      = 1 , Criteria1: = Target.Range.Text
      End Sub
      见下图:
  4.  完成。不过注意,OFFICE2003默认的宏安全性为高,我们在文件中自己定义了一些代码,默认会被组织,所以我们需要另行修改EXCEL的宏安全性,工具/宏/安全性:设置为中,这样保存好的文件打开时可以进行选择是否启动宏。
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是使用 PHPExcel 导出数据库大量数据的步骤: 1. 首先,在你的项目中引入 PHPExcel 库。可以通过 Composer 安装,也可以直接下载源码并引入。 2. 创建一个 PHP 文件,比如叫做 export.php。 3. 在 export.php 文件中,先连接数据库,并查询需要导出的数据。这里假设你已经有了数据连接的代码和查询数据的代码,这里就不再赘述。 4. 创建一个 PHPExcel 对象,并设置一些基本属性,比如文件格式、作者、标题等等。 ```php require 'PHPExcel/PHPExcel.php'; $objPHPExcel = new PHPExcel(); $objPHPExcel->getProperties()->setCreator("Your Name") ->setLastModifiedBy("Your Name") ->setTitle("Export Data") ->setSubject("Export Data") ->setDescription("Export Data") ->setKeywords("Excel") ->setCategory("Export Data"); ``` 5. 设置表头,将数据库中每个字段的名称作为表头的列名。 ```php $column = 0; foreach ($fields as $field) { $objPHPExcel->setActiveSheetIndex(0) ->setCellValueByColumnAndRow($column, 1, $field['COLUMN_NAME']); $column++; } ``` 6. 将数据库中的数据逐行添加到 Excel 文件中。 ```php $row = 2; while ($data = $result->fetch(PDO::FETCH_ASSOC)) { $column = 0; foreach ($data as $value) { $objPHPExcel->setActiveSheetIndex(0) ->setCellValueByColumnAndRow($column, $row, $value); $column++; } $row++; } ``` 7. 最后,设置 HTTP 响应头,告诉浏览器该文件是一个 Excel 文件,并将文件输出给浏览器。 ```php header('Content-Type: application/vnd.ms-excel'); header('Content-Disposition: attachment;filename="export.xls"'); header('Cache-Control: max-age=0'); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); $objWriter->save('php://output'); ``` 到这里,一个基本的使用 PHPExcel 导出数据库大量数据的功能就完成了。当然,你可以根据实际需求对代码进行修改和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值