1.判断列内是否有重复值:

Dim arrT As Range
Dim rng As Range
Set arrT = Range("A:A")'判读A列单元格
For Each rng In arrT
If rng = Empty Then'如果单元格为空就退出循环,否者循环65535次
Exit For
End If
k = Application.CountIf(arrT, rng)’用CountIf函数扫描出重复值,跟excel的CountIF函数一样
If k > 1 Then
rng.Select
MsgBox rng.Address & " has duplicate data.'输出提示信息,程序结束
End
End If
Next

2.得到指定范围内非空单元格的数量

Dim n As Long
n = Application.WorksheetFunction.CountA(Range("A:A")) 'Count of non-empty data in colum A

3.清空指定sheet页

ActiveWorkbook.Worksheets("test").UsedRange.ClearContents

4.连接DB,并将从DB取得的集合放Sheet页的指定行

    Set dbConn = CreateObject("ADODB.Connection")
Set resSet = CreateObject("ADODB.Recordset")
Rem ---------------------------------------
strConn = "Provider=MSDAORA.1; user id=" & USER_ID & "; password=" & PASSWORD & "; data source = " & DATA_SOURCE & "; Persist Security Info=True"
'Add reference: Microsoft ActiveX Data Objects 2.8
'Library,Microsoft ActiveX Data Objects Recordset 2.8 Library
Rem------------------------------------------
dbConn.Open strConn
If dbConn.State <> adStateOpen Then
MsgBox "DB Connect failed.Please Add reference: Microsoft ActiveX Data Objects 2.8 Library"
connectDB = False
End
End If
'select sql
Set resSet = dbConn.Execute("select * from dual") If (resSet.BOF And resSet.EOF) Then
dbConn.Close
connectDB = False
End
End If 'preset result
Sheet1.Range("A2").CopyFromRecordset resSet
'close connect
dbConn.Close
connectDB = True

5.使单元格不可编辑

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 2 Or Target.Column = 3 Or Target.Column = 4 Or Target.Column = 5 Or Target.Column = 6 Or Target.Column = 7 Or Target.Column = 8 Then
If Cells(Target.Row, Target.Column) <> "" Then
Beep
Cells(Target.Row, 1).Offset(0, 0).Select
'MsgBox Cells(Target.Row, Target.Column).Address & " cannot be selected and edited as it is a read-only cell", _
'vbInformation, "Tool"
End If
End If
End Sub

6.check是不是文件夹或者文件

Public Function FileFolderExists(strFullPath As String) As Boolean

    On Error GoTo EarlyExit
If Not Dir(strFullPath, vbDirectory) = vbNullString Then FileFolderExists = True
EarlyExit:
On Error GoTo 0 End Function

7.文件copy

Set Fso = CreateObject("Scripting.FileSystemObject")
Fso.CopyFile fromPath, toPath

8.创建和删除文件夹

Set fs = CreateObject("scripting.filesystemobject")
fs.deleteFolder LocalFolderPath
fs.createFolder LocalFolderPath

9.用命令创建网络连接盘符

    Dim objshell As Object
Dim DosExec As Object
Set objshell = CreateObject("wscript.shell")
Set DosExec = objshell.Exec("cmd.exe /c " & "net use M: " & createPath)
Set DosExec = Nothing
Set objshell = Nothing

VBA小功能集合-判断列内是否有重复值的更多相关文章

  1. Unity3d 鼠标拣选小功能集合

    最近在做一些优化工具,把鼠标拣选的功能单独抽出来. 可遍历所有选中的某类型资源,会递归文件夹 可编译所有prefab的某个Component,也是递归的 using UnityEngine; usin ...

  2. JavaScript 常用的小功能集合

    1. 得到当前用户使用的浏览器的内核版本 function getExplorer(){ var browser = ""; var explorer = window.navig ...

  3. js 判断数组中是否有重复值

    function arrHasvalue(arr) { var nary = arr.sort(); for (var i = 0; i < arr.length; i++) { if (nar ...

  4. PHP——判断数组中是否有重复值并找出重复值

    可以用来测试需要唯一凭据号码的,是否有重复值,不过一般直接使用uuid了,简单粗暴就解决问题,这个就简单的测试生成的数据是否有重复值吧 <?php /* * @Author: wyy * @Da ...

  5. 【java】【反射】反射实现判断发生了修改操作,判断两个对象是否发生属性值的变更,判断两个List集合内对象的属性值是否发生变更

    java的反射实现: 判断发生了修改操作,判断两个对象是否发生属性值的变更,判断两个List集合内对象的属性值是否发生变更 今日份代码: package com.sxd.streamTest; imp ...

  6. Java学习:集合双列Map

    数据结构 数据结构: 数据结构_栈:先进后出 入口和出口在同一侧 数据结构_队列:先进先出 入口和出口在集合的两侧 数据结构_数组: 查询快:数组的地址是连续的,我们通过数组的首地址可以找到数组,通过 ...

  7. C#、Java中的一些小功能点总结(持续更新......)

    前言:在项目中,有时候一些小的功能点,总是容易让人忽略,但是这些功能加在项目中往往十分的有用,因此笔者在这里总结项目中遇到的一些实用的小功能点,以备用,并持续更新...... 1.禁用DataGrid ...

  8. Laravel实用小功能

    Laravel实用小功能 1.控制访问次数 laravel5.2的新特性,通过中间件设置throttle根据IP控制访问次数 原理:通过回传三个响应头X-RateLimit-Limit,X-RateL ...

  9. Map集合(双列集合)

    Map集合(双列集合)Map集合是键值对集合. 它的元素是由两个值组成的,元素的格式是:key=value. Map集合形式:{key1=value1 , key2=value2 , key3=val ...

随机推荐

  1. linux的文件权限分析

    windows中,文件的类型是根据后缀名来确定的,但是linux则是根据标志来确定的,查看一个文件的权限的命令是 ls -l #查看文件的权限 文件的权限结构如图: ①第一部分:10个字符(第1位表示 ...

  2. log4j配置文件动态指定日志文件名称

    我们在项目当中经常会使用log4j进行日志记录,偶尔会遇到一些要求,比如日志文件名称按照启动参数动态配置,而不去修改log4j.xml,比较简单的一种做法是,通过设置系统属性的方式实现,代码: if( ...

  3. hdu 1598(最小生成树)

    find the most comfortable road Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K ...

  4. 全文索引CONTAINS语法

    Like直接在数据据中查找可以查到所有所需记录但是会扫描整个表会影响性能CONTAINS是基于全文索引进行查询,查询结果受系统全文索引分词的方法影响查询结果会不全.Select * FROM A Wh ...

  5. [thinkphp] 如何解析ajaxReturn返回的json字符串

    success: function(data){ var dataObj=eval("("+data+")");//转换为json对象 alert(dataOb ...

  6. 初步接触LVS

    今天整理下思绪,定下要掌握LVS原理和使用方法.于是,看了部分关于LVS的概述和文章. 章博士在2002年写的LVS的几篇文章,在我看来,今天都值得一看.http://www.linuxvirtual ...

  7. [入门OJ3876]怎样学习哲学

    题目大意: 有一个$n\times m(n,m\leq 10^9)$的网格图,从一个点可以到下一行中列数比它大的点.有$k(k\leq 2000)$个点是不能走的,问从第$1$行到第$n$行共有几种方 ...

  8. 八. 输入输出(IO)操作7.文件的随机读写

    Java.io 包提供了 RandomAccessFile 类用于随机文件的创建和访问.使用这个类,可以跳转到文件的任意位置读写数据.程序可以在随机文件中插入数据,而不会破坏该文件的其他数据.此外,程 ...

  9. bean装配--注解

    1,Dao层 package com.songyan.zhujie; public interface UserDao { public void say(); } package com.songy ...

  10. 解魔方的机器人攻略17 – 魔方CFOP算法

    由 动力老男孩 发表于 2010/01/03 17:38:09 本来我想把这个攻略做成一个NXT开发的教程,把传感器,电机,发声等部分都介绍一遍.不过现在看来有些同学很心急,希望早点看到“核心代码”, ...