收集整理常用的网页代码、函数运用等,供参考学习

EXCEL宏:用字典代替Vlookup

[不指定 2020/06/18 06:18 | by 吕进 | Via csdn ]
Vlookup,在vba中一般用Application.Vlookup来实现,但总归要通过循环完成,如有不匹配的还报错,感觉效率不高。这里直接上几个用字典替代vlookup的方法。
方法一(经测试,3000行数据匹配,只需0.0156秒):
Sub VLOOKUP_01()
    Dim t As Date
    t = Timer
    Application.ScreenUpdating = False
    Sheets("DD").Range("AE2:AF10000").Clear
    Set ddcl = Sheets("数据源")
    Set dd = Sheets("目标表")
    
    Dim data, temp, arr, brr
    Dim d, v
    Dim i&, k&
    Set d = CreateObject("scripting.dictionary")
    Set v = CreateObject("scripting.dictionary")
    data = ddcl.[a2].CurrentRegion '被索引的数据表,也可以用具体的区域
    'data = ddcl.Range("A1:D65536")
    For i = 2 To UBound(data)
        d(data(i, 1) & "") = data(i, 3) '被取值所在列,如果只匹配一列,就不需v字典了
        v(data(i, 1) & "") = data(i, 4) '被取值所在列
    Next

    ddm = dd.Range("A65536").End(xlUp).Row
    temp = dd.Range("k1:k" & ddm) '索引参照列,注意必须是第一行开始
    ReDim arr(2 To UBound(temp), 1 To 1)
    ReDim brr(2 To UBound(temp), 1 To 1)
    For k = 2 To UBound(temp)
        arr(k, 1) = d(temp(k, 1))
        brr(k, 1) = v(temp(k, 1))
    Next
    dd.[AE2].Resize(UBound(arr) - 1, 1) = arr
    dd.[AF2].Resize(UBound(brr) - 1, 1) = brr
    Set d = Nothing    
    MsgBox "运行" & Format((Timer - t), "0.0000") & "秒"
End Sub
注意:目标表中的索引参照范围,必须从表的第一行开始,或者用dd.[K1].CurrentRegion
Tags: , , , , ,

HTML:页面刷新和局部刷新

[不指定 2020/06/02 09:30 | by 吕进 | Via 本站原创 ]
整个页面刷新,有N多种方式,最直接的是点击浏览器上的刷新按钮(手动刷新),这里记录的主要是自动(定时)刷新。
一、直接在<head>区域中添加代码
<meta http-equiv="refresh" content="5">
注意:这里的5,是每5秒刷新一次;相同的代码,如果后面跟有URL地址,则表示5秒以后,自动跳转到新的网址,如
<meta http-equiv="refresh" content="5;url="http://lvjin.job.sh">

二、在页面中添加JS代码:
<script language="JavaScript">
function myrefresh(){
window.location.reload();
}
setTimeout('myrefresh()',1000);
</script>
注意:这里的1000,即1000毫秒(1秒),另 window.location.href = window.location.href;可以代替 window.location.reload()使用;
Tags: , ,

MYSQL中的分隔符

[不指定 2020/05/09 10:04 | by 吕进 | Via 本站原创 ]
想像分隔符的运用场景:
1、某个人向购物车添加多个商品ID;
2、某个人在某个时段被多个人,多少次投票;
我们常在MYSQL用英文逗号或竖线等符号对字符串进行分隔,但执行find_in_set()函数时,该函数只认英文逗号。所以呢,MYSQL中,如果要用分隔符,建议首选英文逗号。

与分隔符相关的一些函数运用举例——
以下表结构供参考
引用
DROP TABLE IF EXISTS `boblog_appfw`;
CREATE TABLE `boblog_appfw`  (
  `id` int(4) NOT NULL AUTO_INCREMENT,
  `ip` varchar(16) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `activetime` int(16) NULL DEFAULT NULL,
  `bwid` varchar(168) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE,
  UNIQUE INDEX `ip`(`ip`, `activetime`) USING BTREE
) ENGINE = MyISAM AUTO_INCREMENT = 6 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

SET FOREIGN_KEY_CHECKS = 1;

微信内链接直接打开外置浏览器

[不指定 2020/05/01 20:36 | by 吕进 | Via 本站原创 ]
网上找了半天,测试了N个版本,目前看来就这个比较管用(直接复制代码,修改下自定义URL跳转,上传服务器就行)。
不啰嗦,直接上代码了——
<?php
error_reporting(0);
if($_GET['open']==1 && strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger')!==false){
header("Content-Disposition: attachment; filename=\"Lv.App\"");
header("Content-Type:application/vnd.android.package-archive;charset=utf-8");
}
?>
<script>
var url = ''; //定义url跳转
window.mobileUtil = (function(win, doc) {
var UA = navigator.userAgent,
isAndroid = /android|adr/gi.test(UA),
isIOS = /iphone|ipod|ipad/gi.test(UA) && !isAndroid,
isBlackBerry = /BlackBerry/i.test(UA),
isWindowPhone = /IEMobile/i.test(UA),
isMobile = isAndroid || isIOS || isBlackBerry || isWindowPhone;
return {
isAndroid: isAndroid,
isIOS: isIOS,
isMobile: isMobile,
isWeixin: /MicroMessenger/gi.test(UA),
isQQ: /QQ/gi.test(UA)
};
})(window, document);
//微信环境判断
if(mobileUtil.isWeixin){
//ios
if(mobileUtil.isIOS){
//解析地址未成功
window.location.replace(url);
}
//android
else if(mobileUtil.isAndroid){
url = '?open=1';//重新定义url地址
window.location.replace(url);
}
}
//其他设备
else{
//重载跳转页面
window.location.replace(url);
}
</script>
下载文件 (已下载 2191 次)
参考自:CSDN
Tags: , , ,
分页: 1/9 第一页 1 2 3 4 5 6 7 8 9 下页 最后页 [ 显示模式: 摘要 | 列表 ]