文件格式

.xls.xlsx是 Excel 表格文件的默认格式。
.xls是 Excel 2007 以前默认的格式,.xlsx则是 Excel 2007 开始的默认格式。

这两种格式文件最大的两个区别有两点:

  1. 同样内容的表格,.xlsx文件更小;
  2. .xls最多支持 66535 行数据,.xlsx最多支持 1048576 行数据

还有另一个常用的格式.csv,这种格式只能记录文本内容,无法保存字体、颜色、合并单元格等信息。
##工作簿、工作表
一个表格文件被 Excel 叫做工作簿(Workbook),工作簿里可以有多个工作表(Worksheet)。
为了方便管理,可以将内容相关的表格放到同一个工作簿里不同的工作表中。

如下图,是一个名为“工作记录”的文件,按月份命名了每个工作表,在工作表名称上右键可以重命名,通过移动或复制功能,也可将工作表移动或复制到单独的文件里,
通过保护工作表功能,可以对单个工作表设置密码,使其他人无法修改内容。
右下角可以调整缩放比例,方便查看内容。

- 阅读剩余部分 -

Google 的在线应用允许用户通过脚本(Google Apps Script)对其增加功能,以 Google Sheets 为例,我们可以增加一个菜单,加入一些本来没有的功能,如果你会 JavaScript,很容易就会上手了。
google sheets menu.png

添加脚本

通过工具栏工具-脚本编辑器来到脚本页,默认建立了一个.gs后缀名的脚本文件,并且写了一个myFunction函数。
添加一行代码Logger.log("ok");,保存后点击运行按钮,运行完成后在就能能看到一行输出ok
Logger.log()的功能类似 JavaScript 里的console.log(),要注意的是,Google Apps Script 并不是支持所有的 JS API。

google-sheet-logger.jpg

- 阅读剩余部分 -

工具:Google Indexation Tester
使用方法:

  1. 访问工具链接,会出现如下图提示,点击“制作副本”,然后会在你的Google表格里创建一个表格
    googleindexchecker
  2. 在B列里输入你要测试的网址,然后表格右侧选择“Run”,此时就开始自动测试了。可以在“Indexed URLs”和“Non-indexed URLs”里分别查看已收录和未收录。
    googleindexchecker
  3. 注意:
    1. 测试新的网址请先选“Reset”清除已存在的结果
      googleindexchecker
    2. 默认支持一次测试1000个网址
    3. 下一次使用此工具直接到你Google表格里,进入Google Indexation Tester表格即可
    4. 如果工具出现错误请尝试重新“制作副本”
    5. 工具可能有时效性,注意抽查结果是否正确

详细介绍:https://www.greenlanemarketing.com/tools/google-indexation-tester/

需要向http://tools.google.com/service/update2这个地址post数据,数据内容为XML,返回的数据也是XML,以PHP为例:

<?php
header("Content-type: text/xml");
$url = "http://tools.google.com/service/update2";
$appid = array(
               "Stable"=>"8A69D345-D564-463C-AFF1-A69D9E530F96",
               "Beta"=>"8237E44A-0054-442C-B6B6-EA0509993955",
               "Dev"=>"401C381F-E0DE-4B85-8BD8-3F3F14FBDA57",
               "Canary"=>"4EA16AC7-FD5A-47C3-875B-DBF4A2008C20"
              );
$ap = array(
               "Stable"=>array("x86"=>"-multi-chrome", "x64"=>"x64-stable-multi-chrome"),
               "Beta"=>array("x86"=>"1.1-beta","x64"=>"x64-beta-multi-chrome"),
               "Dev"=>array("x86"=>"2.0-dev", "x64"=>"x64-dev-multi-chrome"),
               "Canary"=>array("x86"=>"", "x64"=>"x64-canary")
             );
$branch = $appid["Stable"];
$arch = $ap["Stable"]["x64"];
$data = "<?xml version='1.0' encoding='UTF-8'?><request protocol='3.0' ismachine='0'><hw sse='1' sse2='1' sse3='1' ssse3='1' sse41='1' sse42='1' avx='1' physmemory='12582912' /><os platform='win' version='6.3' arch='x64'/><app appid='{{$branch}}' ap='$arch'><updatecheck/></app></request>";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_exec($ch);
curl_close($ch);

执行后结果如下图:
getchrome.png

?本文参考:https://github.com/shuax/getchrome/blob/master/main.py

1.修改apache\conf\extra\httpd-xampp.conf:

    <Directory "C:/xampp/phpMyAdmin">
        AllowOverride AuthConfig
        #Require local
        Order allow,deny
        Allow from all
        Require all granted
        ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
    </Directory>

2.在phpmyadmin给root用户设置密码
3.修改phpMyAdmin\config.inc.php

$cfg['Servers'][$i]['auth_type'] = 'cookie';

Tablesorter是一个JQuery插件,功能是对标准的table进行排序,很简单,只要一句JS代码就能实现点击表头排序的功能,但也很强大,通过设置也能实现表头锁定,Ajax加载数据,分页,主题,复杂表头,表格嵌套等等功能,官方的API头都可以给你看大?。

简单开始

引用JS文件

<script type="text/javascript" src="jquery.min.js"></script> 
<script type="text/javascript" src="jquery.tablesorter.js"></script> 

构造标准的表格

<table id="myTable" class="tablesorter"> 
<thead> 
<tr> 
    <th>Last Name</th> 
    <th>First Name</th> 
    <th>Email</th> 
    <th>Due</th> 
    <th>Web Site</th> 
</tr> 
</thead> 
<tbody> 
<tr> 
    <td>Smith</td> 
    <td>John</td> 
    <td>jsmith@gmail.com</td> 
    <td>$50.00</td> 
    <td>http://www.jsmith.com</td> 
</tr> 
<tr> 
    <td>Bach</td> 
    <td>Frank</td> 
    <td>fbach@yahoo.com</td> 
    <td>$50.00</td> 
    <td>http://www.frank.com</td> 
</tr> 
<tr> 
    <td>Doe</td> 
    <td>Jason</td> 
    <td>jdoe@hotmail.com</td> 
    <td>$100.00</td> 
    <td>http://www.jdoe.com</td> 
</tr> 
<tr> 
    <td>Conway</td> 
    <td>Tim</td> 
    <td>tconway@earthlink.net</td> 
    <td>$50.00</td> 
    <td>http://www.timconway.com</td> 
</tr> 
</tbody> 
</table> 

对表格应用Tablesorter

$(document).ready(function() 
    { 
        $("#myTable").tablesorter(); 
    } 
); 

到此你的表格就已经被赋予了排序功能,排序点击表头即可~
tablesorter.jpg

没看错,默认的表格就是这么丑,不过Tablesorter支持主题,往下看
引用主题css文件

<link rel="stylesheet" href="theme.dropbox.css">

注册主题

$("#myTable").tablesorter({
    theme:"dropbox"
}); 

tablesorter1.jpg

瞬间回到现代,这是个dropbox风格主题。

- 阅读剩余部分 -

Vlookup可以实现在数据区域内根据首列数据查找同行其它列数据Vlookup(首列数据,数据区域,同行其它列数据,false)

如下图,我们在单元格F5内输入一个商家编号来查询到对应商家的网站显示在单元格F6,所以F5为第一个参数,商家编号和商家网站包含在A2:C11区域里,所以A2:C11为第二个参数,我们想要的商家网站在区域内的第3列,所以第三个参数为3。所以结果单元格F6里最终公式为=VLOOKUP(F5,A2:C11,3,FALSE),图中报错是因为还没有输入要查询的商家编号。
vlookup4.jpg

Vlookup还能跨工作表查询,Vlookup(首列数据,工作表!数据区域,同行其它列数据,false)

- 阅读剩余部分 -

Bitcron模板中可使用include来引用另一个文件,比如网站侧边栏在首页和分类页都有展示,这里就可以把侧边栏的代码写到单独的模板文件aside.jade中,然后在首页模板index.jade或者分类页模板中直接引用这个文件。

//index.jade
include aside.jade

然而实际上侧边栏有很多部分,在不同页面往往显示的不完全一样,比如首页显示网站信息、分类列表,分类页显示网站信息和最新文章列表。
如果用include来实现的话就得判断当前页是首页还是分类页,或者干脆把网站信息、分类列表、最新文章列表都独立成单个文件?这就更复杂了。。

这个时候就需要用到Bitcron模板中的mixin,mixin相当于自定义函数,我们可以把每个模块独立成函数统一写到mixins.jade文件中,然后在需要的地方用from mixins import来调用。

- 阅读剩余部分 -