收集整理常用的网页代码、函数运用等,供参考学习
Vlookup,在vba中一般用Application.Vlookup来实现,但总归要通过循环完成,如有不匹配的还报错,感觉效率不高。这里直接上几个用字典替代vlookup的方法。
方法一(经测试,3000行数据匹配,只需0.0156秒):
方法一(经测试,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
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
HTML:页面刷新和局部刷新
[
2020/06/02 09:30 | by 吕进 | Via 本站原创 ]

整个页面刷新,有N多种方式,最直接的是点击浏览器上的刷新按钮(手动刷新),这里记录的主要是自动(定时)刷新。
一、直接在<head>区域中添加代码
二、在页面中添加JS代码:
一、直接在<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()使用;
function myrefresh(){
window.location.reload();
}
setTimeout('myrefresh()',1000);
</script>
MYSQL中的分隔符
[
2020/05/09 10:04 | by 吕进 | Via 本站原创 ]

想像分隔符的运用场景:
1、某个人向购物车添加多个商品ID;
2、某个人在某个时段被多个人,多少次投票;
我们常在MYSQL用英文逗号或竖线等符号对字符串进行分隔,但执行find_in_set()函数时,该函数只认英文逗号。所以呢,MYSQL中,如果要用分隔符,建议首选英文逗号。
与分隔符相关的一些函数运用举例——
以下表结构供参考
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;
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跳转,上传服务器就行)。
不啰嗦,直接上代码了——
下载文件 (已下载 2191 次)参考自:CSDN
不啰嗦,直接上代码了——
<?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>
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>
