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. git回溯到指定版本

    git回溯到指定版本 git log命令查看仓库日志 然后使用git checkout 命令 例如回溯到上图中的版本 git checkout 12db5d6fd138922a8aaf2214c84c ...

  2. Guava源码学习(一)Optional

    基于版本:Guava 22.0 Wiki:Using and avoiding null 0:Optional简介 null在很多场景下会引发问题,NullPointerException困扰过无数的 ...

  3. 计蒜客 18492.Upside down primes-米勒拉宾判大素数 (German Collegiate Programming Contest 2015 ACM-ICPC Asia Training League 暑假第一阶段第三场 K)

    K. Upside down primes 传送门 这个题就是把大数按字符串输进去,判断一下是不是素数,然后反转180度,先判断反转之后的东西是不是一个数,如果是的话,再把这个数判一下是不是素数,如果 ...

  4. EL的函数与标签

    1 什么EL函数库 EL函数库是由第三方对EL的扩展,我们现在学习的EL函数库是由JSTL添加的.下面我们会学习JSTL标签库. EL函数库就是定义一些有返回值的静态方法.然后通过EL语言来调用它们! ...

  5. hdu6035(树形DP)

    hdu6035 题意 给出一棵树,现在定义两点之间距离为两点间最短路径上颜色集合的大小.问任意两点间距离之和. 分析 换个方向,题目其实等价于求每种颜色在多少条路径上出现过(每种颜色对于答案的贡献), ...

  6. poj3311(状态压缩DP)

    poj3311 题意 给出一个矩阵,i 行 j 列表示位置 i 到 j 的时间. 求从 0 点出发经过 1 到 n 所有点后并返回 0 点最短耗时. 分析 先用 Floyd 算法,求出两点之间最短路, ...

  7. 【高精度】高精度数除以低精度数I

    问题 G: [高精度]高精度数除以低精度数I 时间限制: 1 Sec  内存限制: 512 MB提交: 173  解决: 71[提交] [状态] [讨论版] [命题人:] 题目描述 修罗王聚集了庞大的 ...

  8. EasyUI Datagrid 单元格编辑

    3:对于单元格的编辑 $('#Units').datagrid({ pageNumber: 1, //url: "@ViewBag.Domain/Paper/GetQuestionUnit& ...

  9. Map泛型集合-国家中文和英文的键值映射

    package collection; import java.util.HashMap; import java.util.Map; public class Test5 { public stat ...

  10. 浏览器的DNS缓存查看和清除

    有dns的地方,就有缓存.浏览器.操作系统.Local DNS.根域名服务器,它们都会对DNS结果做一定程度的缓存.本文总结一些常见的浏览器和操作系统的DNS缓存时间 浏览器先查询自己的缓存,查不到, ...