搜档网
当前位置:搜档网 › VBA常用代码

VBA常用代码

VBA常用代码
VBA常用代码

1.遍历所有已打开的word文档

For Each docOpened In Documents

……

Next docOpened

2.Word 将目录下所有文档转换为txt,并删除原文档

Sub 目录下doc转txt()

'目录下所有word文档转为txt,并删除word文档

'保存在原目录

'遍历所有文件夹,把带路径的文件名存入字典

On Error Resume Next

Dim Path As String, t 'Path为路径,t用于计算程序执行花费的时间

Set objshell = CreateObject("Shell.Application")

Set objfolder = objshell.BrowseForFolder(0, "选择文件夹", 0, 0)

If Not objfolder Is Nothing Then Path = objfolder.sel f.Path & "\"

Set objfolder = Nothing

Set objshell = Nothing

'创建字典用于存储路径和文件名

Dim DicPath, DicFile, i As Integer, Ke, ContentName A s String, FileName As String, MsgTxt

Set DicPath = CreateObject("Scripting.Dictionary")

Set DicFile = CreateObject("Scripting.Dictionary")

DicPath.Add Path, ""

i = 0

'存所有路径

Do While i < DicPath.count

Ke = DicPath.keys

ContentName = Dir(Ke(i), vbDirectory)

Do While ContentName <> ""

'若有子文件夹,则添加

'跳过当前的目录及上层目录

If ContentName <> "." And ContentName < > ".." Then

If GetAttr(Ke(i) & ContentName) = vbDirectory Then

DicPath.Add (Ke(i) & Conte ntName & "\"), ""

End If

End If

ContentName = Dir

Loop

i = i + 1

Loop

'存所有doc文件名

For Each Ke In DicPath.keys

FileName = Dir(Ke & "*.doc")

Do While FileName <> ""

DicFile.Add (Ke & FileName), ""

FileName = Dir

Loop

Next Ke

'打开文件

Application.DisplayAlerts = wdAlertsNone

Dim myDoc

For Each Ke In DicFile.keys

Set myDoc = Documents.Open(Ke)

'原路径另存为TXT

ActiveDocument.SaveAs2 FileName:=myDoc.Path & "\" & Left(https://www.sodocs.net/doc/9b4135450.html,, InStrRev(https://www.sodocs.net/doc/9b4135450.html,, ".") - 1) & ".txt", FileFormat:=wdFormatText

'处理完成后关闭并删除原word文档

ActiveDocument.Close

Kill Ke

Next Ke

MsgBox "Done!"

End Sub

3.获取网页源代码

Dim httpRequest As Object

Set httpRequest = CreateObject("MSXML2.XMLHTTP.3.0")

httpRequest.Open "GET", "https://www.sodocs.net/doc/9b4135450.html,/tmp/auto product/ccq2/ci/cha_num.php?pid=" & ItemID & "&sdate=" & sDate & "&edate=" & eDate, False

httpRequest.Send

txtTemp = httpRequest.responseText

txtTemp = StrConv(httpRequest.responsebody, vbUnicode)

4.Excel合并相同文件名的单元格,不同文件名的行填充不同的背景色

Dim i As Integer, j As Integer, k As Integer 'i用于遍历,j 用于计数须合并的行数,k用于填充颜色

i = 1

k = 0

With wbTmp

Do While .Cells(i + 1, 1) <> ""

j = 1

Do While .Cells(i, 1) = .Cells(i + j, 1)

j = j + 1

Loop

If j > 1 Then

.Range(.Cells(i, 1), .Cells(i + j - 1, 1)).Merge

End If

If (k Mod 2 = 1) Then

.Cells(i, 1).Resize(j, 5).Interior.Color = 5296274

Else: .Cells(i, 1).Resize(j, 5).Interior.Color = 49407

End If

k = k + 1

i = i + j

Loop

End With

5.若同目录下不存在某文件夹,则创建

Dim sr

sr = Dir(ThisWorkbook.Path & "\上海办待导入

txt", vbDirectory)

If sr = "" Then

MkDir ThisWorkbook.Path & "\上海办待导入txt"

End If

6.Word替换昨日今日去年之类的字眼

Sub 替换昨今去()

Dim Yesterday_Day As Integer, Yesterday As String, Yesterday_M onth As Integer, Yesterday_Year As Integer

Dim Today_Day As Integer, Today_Month As Integer, Today_Year As Integer

Yesterday = DateAdd("d", -1, Date)

Yesterday_Day = Day(Yesterday)

Yesterday_Month = Month(Yesterday)

Yesterday_Year = Year(Yesterday)

Today_Day = Day(Date)

Today_Month = Month(Date)

Today_Year = Year(Date)

'选择性粘贴

Selection.PasteAndFormat (wdPasteDefault)

Selection.Find.ClearFormatting

Selection.Find.Replacement.ClearFormatting

'取消所有超链接

Dim cc As Field

For Each cc In ActiveDocument.Fields

If cc.Type = wdFieldHyperlink Then

cc.Unlink

End If

Next

Set cc = Nothing

'替换昨天、昨日

With Selection.Find

.Text = "昨[天日]{1}"

.Replacement.Text = Yesterday_Month & "月" & Yesterday_Day & "日"

.Forward = True

.Wrap = wdFindContinue

.MatchByte = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

'替换今天、今日

With Selection.Find

.Text = "今[天日]{1}"

.Replacement.Text = Today_Month & "月" & Today_Day & "日"

.Forward = True

.Wrap = wdFindContinue

.MatchByte = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

'替换今年

With Selection.Find

.Text = "今年"

.Replacement.Text = Today_Year & "年"

.Forward = True

.Wrap = wdFindContinue

.MatchByte = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

'替换去年

With Selection.Find

.Text = "去年"

.Replacement.Text = Today_Year - 1 & "年"

.Forward = True

.Wrap = wdFindContinue

.MatchByte = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

'删象屿期货的段前符号

With Selection.Find

.Text = ChrW(61548)

.Replacement.Text = ""

.Forward = True

.Wrap = wdFindContinue

.MatchByte = True

.MatchWildcards = False

End With

Selection.Find.Execute Replace:=wdReplaceAll

'手动换行符替换成回车符

With Selection.Find

.Text = "^l"

.Replacement.Text = "^p"

.Forward = True

.Wrap = wdFindContinue

.MatchByte = True

.MatchWildcards = False

End With

Selection.Find.Execute Replace:=wdReplaceAll

'段与段顶多只隔一行,将任意个回车符号替换成二个With Selection.Find

.Text = "(^13)@"

.Replacement.Text = "^p^p"

.Forward = True

.Wrap = wdFindContinue

.MatchByte = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

'全选+剪切

Selection.WholeStory

Selection.Cut

End Sub

7.提取word文档里的图片

Sub 存成html()

Application.ScreenUpdating = False

Dim FileName As String

FileName = InputBox("请输入文件名")

Selection.Copy

Documents.Add DocumentType:=wdNewBlankDocument

Selection.PasteAndFormat (wdPasteDefault)

'若无目录则创建

If Dir("D:\backup\140591\桌面\报告

temp\", vbDirectory) = "" Then MkDir "D:\backup\140591\桌面\报告temp\"

ActiveDocument.SaveAs FileName:="D:\backup\140591\桌面\报告temp\" & FileName, FileFormat:=wdFormatHTML, _

LockComments:=False, Password:="", AddToRecentFiles :=True, WritePassword _

:="", ReadOnlyRecommended:=False, EmbedTrueTypeFont s:=False, _

SaveNativePictureFormat:=False, SaveFormsData:=False , SaveAsAOCELetter:= _

False

ActiveWindow.View.Type = wdWebView

'段与段顶多只隔一行,将任意个回车符号替换成二个

With Selection.Find

.Text = "(^13)@"

.Replacement.Text = "^p^p"

.Forward = True

.Wrap = wdFindContinue

.MatchByte = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

'全选+剪切

Selection.WholeStory

Selection.Cut

ActiveDocument.Close False

Application.ScreenUpdating = True

MsgBox "已完成!"

End Sub

8.Word 删除新闻中的多余代码和文字

Sub 新闻排版()

'

'

'选择性粘贴

Selection.PasteAndFormat (wdPasteDefault)

Selection.Find.ClearFormatting

Selection.Find.Replacement.ClearFormatting

'删图片

Dim oInlineShape As InlineShape

For Each oInlineShape In ActiveDocument.InlineShapes oInlineShape.Delete

Next

'取消所有超链接

Dim cc As Field

For Each cc In ActiveDocument.Fields

If cc.Type = wdFieldHyperlink Then

cc.Unlink

End If

Next

Set cc = Nothing

'删(微博)[微博]

With Selection.Find

.Text = "[

\(\(]微博[\)\)]"

.Replacement.Text = ""

.Forward = True

.Wrap = wdFindContinue

.MatchByte = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

'删(博客,微博)

With Selection.Find

.Text = "(博客,微博)"

.Replacement.Text = "^p^p"

.Forward = True

.Wrap = wdFindContinue

.MatchByte = True

.MatchWildcards = False

End With

Selection.Find.Execute Replace:=wdReplaceAll

'删象屿期货的段前符号

With Selection.Find

.Text = ChrW(61548)

.Replacement.Text = ""

.Forward = True

.Wrap = wdFindContinue

.MatchByte = True

.MatchWildcards = False

End With

Selection.Find.Execute Replace:=wdReplaceAll

'删小标题后的/

With Selection.Find

.Text = "/^p"

.Replacement.Text = "^p"

.Forward = True

.Wrap = wdFindContinue

.MatchByte = True

.MatchWildcards = False

End With

Selection.Find.Execute Replace:=wdReplaceAll

'删股票代码

With Selection.Find

.Text = "[\-0?9.]1,[,s]1,[\-0?9.]1,[,s]1,[\-0?9. "

.Replacement.Text = ""

.Forward = True

.Wrap = wdFindContinue

.MatchByte = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

'删股票涨跌值

With Selection.Find

.Text = "

[\-0?9.

"

.Replacement.Text = ""

.Forward = True

.Wrap = wdFindContinue

.MatchByte = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

'删[2.98% 资金研报]

With Selection.Find

.Text = "

[\-0?9.

"

.Replacement.Text = ""

.Forward = True

.Wrap = wdFindContinue

.MatchByte = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

'删(600648,股吧)

With Selection.Find

.Text = "[0?9]6,[股吧基金]2,3 "

.Replacement.Text = ""

.Forward = True

.Wrap = wdFindContinue

.MatchByte = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

'手动换行符替换成回车符

With Selection.Find

.Text = "^l"

.Replacement.Text = "^p"

.Forward = True

.Wrap = wdFindContinue

.MatchByte = True

.MatchWildcards = False

End With

Selection.Find.Execute Replace:=wdReplaceAll

'段与段顶多只隔一行,将任意个回车符号替换成二个

With Selection.Find

.Text = "(^13)@"

.Replacement.Text = "^p^p"

.Forward = True

.Wrap = wdFindContinue

.MatchByte = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

'全选+剪切

Selection.WholeStory

Selection.Cut

End Sub

9.Excel双击则复制单元格内容到剪切板

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

With CreateObject("new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69 }")

.SetText Target

.PutInClipboard

End With

End Sub

10.用对话框打开Excel文件

iFileName = Application.GetOpenFilename("Excel文件 (*.xlsx;*.xls), *.xlsx;*.xls")

11.Excel按指定列升序排列

With wbf.Sort

.SortFields.Clear

.SortFields.Add Key:=Range("B1"), SortOn:=xlSortOnValues, Order:=xlAscending 'descending,递减。Ascending,递增

.SetRange Range("A1").CurrentRegion '排序区域

.Header = xlGuess '第一行包含标题

.MatchCase = False '不区分大小写

.Orientation = xlTopToBottom

.SortMethod = xlPinYin

.Apply

End With

12.汉字编码成URL用的字符串

Public Function Escape(ByVal strText As String) As String

Set JS = CreateObject("msscriptcontrol.scriptcontrol")

https://www.sodocs.net/doc/9b4135450.html,nguage = "JavaScript"

Escape = JS.eval_r("encodeURI('" & Replace(strText, "'", "\'") & "');")

End Function

13.Excel汇总同目录文件

Sub HzWb()

Dim bt As Range, r As Long, c As Long

r = 1 '1 是表头的行数

c = 8 '8 是表头的列数

Range(Cells(r + 1, "A"), Cells(65536, c)).ClearContents

' 清除汇总表中原表数据

Application.ScreenUpdating = False

Dim FileName As String, wb As Workbook, Erow As Long , fn As String, arr As Variant

FileName = Dir(ThisWorkbook.Path & "\*.xls") '返回一个Excel文件,可匹配到.xlsx

Do While FileName <> ""

If FileName <> https://www.sodocs.net/doc/9b4135450.html, Then ' 判断文件是否是本工作簿

Erow = Range("A1").CurrentRegion.Rows.Count + 1 ' 取得汇总表中第一条空行行号

fn = ThisWorkbook.Path & "\" & FileName

Set wb = GetObject(fn) ' 将fn 代表的工作簿对象赋给变量

Set sht = wb.Worksheets(1) ' 汇总的是第1 张工作表

单片机汇编指令大全

单片机汇编指令一览表 作者:乡下人 助记符指令说明字节数周期数 (数据传递类指令) MOV A,Rn 寄存器传送到累加器 1 1 MOV A,direct 直接地址传送到累加器 2 1 MOV A,@Ri 累加器传送到外部RAM(8 地址) 1 1 MOV A,#data 立即数传送到累加器 2 1 MOV Rn,A 累加器传送到寄存器 1 1 MOV Rn,direct 直接地址传送到寄存器 2 2 MOV Rn,#data 累加器传送到直接地址 2 1 MOV direct,Rn 寄存器传送到直接地址 2 1 MOV direct,direct 直接地址传送到直接地址 3 2 MOV direct,A 累加器传送到直接地址 2 1 MOV direct,@Ri 间接RAM 传送到直接地址 2 2 MOV direct,#data 立即数传送到直接地址 3 2 MOV @Ri,A 直接地址传送到直接地址 1 2 MOV @Ri,direct 直接地址传送到间接RAM 2 1 MOV @Ri,#data 立即数传送到间接RAM 2 2 MOV DPTR,#data16 16 位常数加载到数据指针 3 1 MOVC A,@A+DPTR 代码字节传送到累加器 1 2 MOVC A,@A+PC 代码字节传送到累加器 1 2 MOVX A,@Ri 外部RAM(8 地址)传送到累加器 1 2 MOVX A,@DPTR 外部RAM(16 地址)传送到累加器 1 2 MOVX @Ri,A 累加器传送到外部RAM(8 地址) 1 2 MOVX @DPTR,A 累加器传送到外部RAM(16 地址) 1 2 PUSH direct 直接地址压入堆栈 2 2 POP direct 直接地址弹出堆栈 2 2 XCH A,Rn 寄存器和累加器交换 1 1 XCH A, direct 直接地址和累加器交换 2 1 XCH A, @Ri 间接RAM 和累加器交换 1 1 XCHD A, @Ri 间接RAM 和累加器交换低4 位字节 1 1 (算术运算类指令) INC A 累加器加1 1 1 INC Rn 寄存器加1 1 1 INC direct 直接地址加1 2 1 INC @Ri 间接RAM 加1 1 1 INC DPTR 数据指针加1 1 2 DEC A 累加器减1 1 1 DEC Rn 寄存器减1 1 1 DEC direct 直接地址减1 2 2

excelvba常见字典用法集锦及代码详解(全)

常见字典用法集锦及代码详解 前言 凡是上过学校的人都使用过字典,从新华字典、成语词典,到英汉字典以及各种各样数不胜数的专业字典,字典是上学必备的、经常查阅的工具书。有了它们,我们可以很方便的通过查找某个关键字,进而查到这个关键字的种种解释,非常快捷实用。 凡是上过EH论坛的想学习VBA里面字典用法的,几乎都看过研究过northwolves狼版主、oobird版主的有关字典的精华贴和经典代码。我也是从这里接触到和学习到字典的,在此,对他们表示深深的谢意,同时也对很多把字典用得出神入化的高手们致敬,从他们那里我们也学到了很多,也得到了提高。 字典对象只有4个属性和6个方法,相对其它的对象要简洁得多,而且容易理解使用方便,功能强大,运行速度非常快,效率极高。深受大家的喜爱。 本文希望通过对一些字典应用的典型实例的代码的详细解释来

给初次接触字典和想要进一步了解字典用法的朋友提供一点备查的参考资料,希望大家能喜欢。 给代码注释估计是大家都怕做的,因为往往是出力不讨好的,稍不留神或者自己确实理解得不对,还会贻误他人。所以下面的这些注释如果有不对或者不妥当的地方,请大家跟帖时指正批评,及时改正。 字典的简介 字典(Dictionary)对象是微软Windows脚本语言中的一个很有用的对象。 附带提一下,有名的正则表达式(RegExp)对象和能方便处理驱动器、文件夹和文件的(FileSystemObject)对象也是微软Windows脚本语言中的一份子。 字典对象相当于一种联合数组,它是由具有唯一性的关键字(Key)和它的项(Item)联合组成。就好像一本字典书一样,是

网页设计试题及html代码

2.2.3 字型设置标记 功能:设置文字的风格,如黑体、斜体、带下划线等,这是一组标记,它们可以单独使用,也可以混合使用产生复合修饰效果。常用的标记有以下一些: :文字以粗体显示。 :文字显示为斜体。 :显示下划线。 :删除线。 :使文字大小相对于前面的文字增大一级。 :使文字大小相对于前面的文字减小一级。 :使文字成为前一个字符的上标。 :使文字成为前一个字符的下标。 :使文字显示为闪烁效果。 :以等宽体显示西文字符。 :输出引用方式的字体,通常是斜体。 :强调文字,通常用斜体加黑体。 :特别强调的文字,通常也是斜体加黑体。 注:有些标记的效果必须在动态环境下才能显示,例如 标记。 【例2-4】字型设置标记的应用。 例如单标记


表示在文档当前位置画一条水平线,一般是从窗口中当前行的最左端一直画到最右端,它可以带这么一些属性:
。 功能:设置网页中普通文字的显示效果。 格式:文字。 格式:标题内容。 属性:n 表示标题字号的级别,可以是1~6之间的任意整数,数字越小,字号越大。 段落标记 功能:设置文章段落的开始和结束。浏览器在解释HTML文档时,会自动忽略文档中的回车、空格以及其他一些符号,所以在文档中输入回车,并不意味着在浏览器内将看到一个不同的段落,当需要在网页中插入新的段落时,可以使用段落标记,它可以将标记后面的内容另起一段。格式:

。 强制换行标记 功能:另起一行显示文字。 格式:
插入水平线标记 功能:在页面上画横线,可用于页面上内容的分割。 格式:
1.无序列表 功能:设置无序列表。 格式:
  • 列表项目1
  • 列表项目2 属性:在无序列表的开始和结束处,分别是
    标记,每一项列表条目之前必

    单片机蜂鸣器奏乐实验大全代码

    单片机蜂鸣器奏乐实验大 全代码 This manuscript was revised by the office on December 10, 2020.

    O R G0000H LJMP START ORG 000BH INC 20H ;中断服务,中断计数器加1 MOV TH0,#0D8H MOV TL0,#0EFH ;12M晶振,形成10毫秒中断 RETI START: MOV SP,#50H MOV TH0,#0D8H MOV TL0,#0EFH MOV TMOD,#01H MOV IE,#82H MUSIC0: NOP MOV DPTR,#DAT ;表头地址送DPTR MOV 20H,#00H ;中断计数器清0 MUSIC1: NOP CLR A MOVC A,@A+DPTR ;查表取代码 JZ END0 ;是00H,则结束 CJNE A,#0FFH,MUSIC5 LJMP MUSIC3 MUSIC5:NOP MOV R6,A INC DPTR MOV A,#0 MOVC A,@A+DPTR MOV R7,A SETB TR0 MUSIC2:NOP CPL MOV A,R6 MOV R3,A LCALL DEL MOV A,R7 CJNE A,20H,MUSIC2 MOV 20H,#00H INC DPTR LJMP MUSIC1 MUSIC3:NOP CLR TR0

    MOV R2,#0DH MUSIC4:NOP MOV R2,#0FFH LCALL DEL DJNZ R2,MUSIC4 INC DPTR LJMP MUSIC1 END0:NOP MOV R2,#0FFH MUSIC6:MOV R3,#00H LJMP MUSIC0 DEL:NOP DEL3:MOV R4,#02H DEL4:NOP DJNZ R4,DEL4 NOP DJNZ R3,DEL3 RET NOP DAT: DB 18H, 30H, 1CH, 10H DB 20H, 40H, 1CH, 10H DB 18H, 10H, 20H, 10H DB 1CH, 10H, 18H, 40H DB 1CH, 20H, 20H, 20H DB 1CH, 20H, 18H, 20H DB 20H, 80H, 0FFH, 20H DB 30H, 1CH, 10H , 18H DB 20H, 15H, 20H , 1CH DB 20H, 20H, 20H , 26H DB 40H, 20H , 20H , 2BH DB 20H, 26H, 20H , 20H DB 20H, 30H , 80H , 0FFH DB 20H, 20H, 1CH , 10H DB 18H, 10H, 20H , 20H DB 26H, 20H , 2BH , 20H DB 30H, 20H , 2BH , 40H DB 20H, 20H , 1CH , 10H DB 18H, 10H, 20H, 20H DB 26H, 20H , 2BH, 20H DB 30H, 20H, 2BH , 40H DB 20H, 30H, 1CH , 10H DB 18H, 20H , 15H , 20H DB 1CH, 20H , 20H , 20H

    VBA常用代码大全

    .、八、- 刖言 我们平时在工作表单元格的公式中常常使用函数,EGcel自带的常用的函数多达300多个, 功能强大,丰富多彩,但是在 VBA中不能直接应用,必须在函数名前面加上对象,比如:Applicatio n. WorksheetF un ctio n.Sum(arg1,arg2,arg3) 。 而能在VBA中直接应用的函数也有几十个,下面将逐一详细介绍常用的40个VBA函数, 以供大家学习参考。 第1.1例ASC函数 一、题目: 要求编写一段代码,运行后得到字符串”EGcel”的首字母和” e”的ASCII值。 二、代码: Sub 示例_1_01() DimmyNum1%,myNum2% myNum仁Asc("EGcel")'返回 69 myNum2=Asc("e")' 返回 101 [a1]="myNum 1=":[b1]=myNum1 [a2]="myNum2=":[b2]=myNum2 En dSub 三、代码详解 1、Sub示例_1_01():宏程序的开始语句。 2、DimmyNum1%,myNum2% :变量 myNum1 和 myNum2 声明为整型变量。 也可以写为DimmyNum1AsInteger 。Integer变量存储为16位(2个字节)的数值形式,

    其范围为-32,768到32,767之间。Integer的类型声明字符是百分比符号(%)。 3、myNum1=Asc("EGcel"):把 Asc 函数的值赋给变量 myNum1 。 Asc函数返回一个Integer,代表字符串中首字母的字符的 ASCII代码。 语法 Asc(stri ng) 必要的string (字符串)参数可以是任何有效的字符串表达式。如果string中没有包含任何字符,则会产生运行时错误。 4、myNum2=Asc("e"):把Asc函数的值赋给变量myNum2。这里返回小写字母e的ASCII 代码101。 5、 [a1]="myNum仁":[b1]=myNum1 :把字符串“ myNum仁“赋给A1单元格,把变量myNum1的值赋给B1单元格。 6、 [a2]="myNum2=":[b2]=myNum2 :把字符串“ myNum2= “赋给 A2 单元格,把变量myNum2的值赋给B2单元格。 7、 EndSub :程序的结束语句,和“ Sub示例_1_01 ()”相对应。 第1.2例Chr函数 一、题目"": 要求编写一段代码,运用 Chr函数将ASCII值转换为对应的字符 二、代码: Sub 示例_1_02() DimmyChar1$,myChar2$ myChar仁Chr(69)'返回 E。 myChar2=Chr(101)' 返回 e。 [a1]="myChar1=":[b1]=myChar1 [a2]="myChar2=":[b2]=myChar2

    Excel VBA常用代码VSTO版20150425

    21-1 使用工作表的名称 this.Application.Worksheets["工作表2"].Activate(); 21-2 使用工作的索引号 this.Application.Worksheets[2].Activate(); 21-3 使用工作表的代码名称 MessageBox.Show(this.Application.ActiveSheet.CodeName); 21-4 用ActiveSheet属性引用活动工作表 this.Application.Worksheets[2].Select(); MessageBox.Show(https://www.sodocs.net/doc/9b4135450.html,); 22-1 选择工作表的方法 this.Application.Worksheets[2].Select(); this.Application.Worksheets[2].Activate(); 23-1 使用For遍历工作表 intwkCount = this.Application.Worksheets.Count; string s = string.Empty; for (inti = 1; i<= wkCount; i++) { s = s + this.Application.Worksheets[i].Name + "\n"; } MessageBox.Show("工作簿中含有以下工作表:" + "\n" + s); 23-2 使用ForEach语句 string s = string.Empty; foreach (Excel.Worksheetwk in this.Application.Worksheets) { s = s + https://www.sodocs.net/doc/9b4135450.html, + "\n"; } MessageBox.Show("工作簿中含有以下工作表:" + "\n" + s); 24-1 在工作表中向下翻页 Excel.Sheetsshs=Globals.ThisWorkbook.Worksheets; Excel.WorksheetwkThis = shs.Application.ActiveSheet; Excel.WorksheetwkNext; intwkIndex = wkThis.Index; intwkCount = shs.Count; if (wkIndex

    [实用参考]VBA常用代码大全.doc

    前言 我们平时在工作表单元格的公式中常常使用函数,EGcel自带的常用的函数多达300多个,功能强大,丰富多彩,但是在VBA中不能直接应用,必须在函数名前面加上对象,比如:Application.WorksheetFunction.Sum(arg1,arg2,arg3)。 而能在VBA中直接应用的函数也有几十个,下面将逐一详细介绍常用的40个VBA函数,以供大家学习参考。 第1.1例ASC函数 一、题目: 要求编写一段代码,运行后得到字符串”EGcel”的首字母和”e”的ASCII值。二、代码: Sub示例_1_01() DimmyNum1%,myNum2% myNum1=Asc("EGcel")'返回69 myNum2=Asc("e")'返回101 [a1]="myNum1=":[b1]=myNum1 [a2]="myNum2=":[b2]=myNum2 EndSub 三、代码详解 1、Sub示例_1_01():宏程序的开始语句。 2、DimmyNum1%,myNum2%:变量myNum1和myNum2声明为整型变量。 也可以写为DimmyNum1AsInteger。Integer变量存储为16位(2个字节)的数值形式,其范围为-32,768到32,767之间。Integer的类型声明字符是百分比符号(%)。 3、myNum1=Asc("EGcel"):把Asc函数的值赋给变量myNum1。

    Asc函数返回一个Integer,代表字符串中首字母的字符的ASCII代码。 语法 Asc(string) 必要的string(字符串)参数可以是任何有效的字符串表达式。如果string中没有包含任何字符,则会产生运行时错误。 4、myNum2=Asc("e"):把Asc函数的值赋给变量myNum2。这里返回小写字母e的ASCII代码101。 5、[a1]="myNum1=":[b1]=myNum1:把字符串“myNum1=“赋给A1单元格,把变量myNum1的值赋给B1单元格。 6、[a2]="myNum2=":[b2]=myNum2:把字符串“myNum2=“赋给A2单元格,把变量myNum2的值赋给B2单元格。 7、EndSub:程序的结束语句,和“Sub示例_1_01()”相对应。 第1.2例Chr函数 一、题目"": 要求编写一段代码,运用Chr函数将ASCII值转换为对应的字符。 二、代码: Sub示例_1_02() DimmyChar1$,myChar2$ myChar1=Chr(69)'返回E。 myChar2=Chr(101)'返回e。 [a1]="myChar1=":[b1]=myChar1 [a2]="myChar2=":[b2]=myChar2 EndSub 三、代码详解

    51单片机50个实例代码

    51单片机50个例程代码程序里有中断,串口等驱动,直接复制即可使用1-IO输出-点亮1个LED灯方法1 /*----------------------------------------------- 名称:IO口高低电平控制 论坛:https://www.sodocs.net/doc/9b4135450.html, 编写:shifang 日期:2009.5 修改:无 内容:点亮P1口的一个LED灯 该程序是单片机学习中最简单最基础的, 通过程序了解如何控制端口的高低电平 ------------------------------------------------*/ #include //包含头文件,一般情况不需要改动, //头文件包含特殊功能寄存器的定义 sbit LED=P1^0;// 用sbit 关键字定义LED到P1.0端口, //LED是自己任意定义且容易记忆的符号 /*------------------------------------------------ 主函数 ------------------------------------------------*/ void main (void) { //此方法使用bit位对单个端口赋值 LED=1; //将P1.0口赋值1,对外输出高电平 LED=0; //将P1.0口赋值0,对外输出低电平 while (1) //主循环 { //主循环中添加其他需要一直工作的程序 } } 2-IO输出-点亮1个LED灯方法2 /*-----------------------------------------------

    名称:IO口高低电平控制 论坛:https://www.sodocs.net/doc/9b4135450.html, 编写:shifang 日期:2009.5 修改:无 内容:点亮P1口的一个LED灯 该程序是单片机学习中最简单最基础的, 通过程序了解如何控制端口的高低电平 ------------------------------------------------*/ #include //包含头文件,一般情况不需要改动, //头文件包含特殊功能寄存器的定义 /*------------------------------------------------ 主函数 ------------------------------------------------*/ void main (void) { //此方法使用1个字节对单个端口赋值 P1 = 0xFF; //P1口全部为高电平,对应的LED灯全灭掉, //ff换算成二进制是1111 1111 P1 = 0xfe; //P1口的最低位点亮,可以更改数值是其他的灯点亮 //0xfe是16进制,0x开头表示16进制数, //fe换算成二进制是1111 1110 while (1) //主循环 { //主循环中添加其他需要一直工作的程序 } } 3-IO输出-点亮多个LED灯方法1 /*----------------------------------------------- 名称:IO口高低电平控制 论坛:https://www.sodocs.net/doc/9b4135450.html, 编写:shifang 日期:2009.5 修改:无 内容:点亮P1口的多个LED灯

    EXCEL常用VBA代码

    删除B列中字符串数值少于21的单元格所在的行 Sub 删除行() r = Range("B65536").End(xlUp).Row '行数 For h = r To 1 Step -1 If Cells(h, 2) < 21 Then Cells(h, 2).EntireRow.Delete Next End Sub ------------------------- 【工作表合并】将同一工作簿中的所有工作表合并到一个工作表中 新建一个工作表,写入代码[在新建的工作表标签处右键查看代码(找不到的直接按一下alt+F11) 把下面的代码复制进去然后点上面的运行运行子程序即可]: Sub 合并当前工作簿下的所有工作表() Application.ScreenUpdating = False For j = 1 To Sheets.Count If Sheets(j).Name <> https://www.sodocs.net/doc/9b4135450.html, Then X = Range("A65536").End(xlUp).Row + 1 Sheets(j).UsedRange.Copy Cells(X, 1) End If Next Range("B1").Select Application.ScreenUpdating = True MsgBox "当前工作簿下的全部工作表已经合并完毕!", vbInformation, "提示" End Sub ********************************************************* 代码这样写也行: Sub c() For i = Sheets.Count To 2 Step -1 Sheets(i).Select Sheets(i).UsedRange.Copy Sheets(1).Select Cells(Cells(65000, 1).End(xlUp).Row + 1, 1).Select ActiveSheet.Paste 'Sheets(i).Delete Next i End Sub ************************************************************ 把一个工作簿中的所有表单合并成一个表单,怎么去掉重复的表头、标题行?方法如下:

    Excel VBA常用代码总结1

    Excel VBA常用代码总结1 改变背景色 Range("A1"). = xlNone ColorIndex一览 改变文字颜色 Range("A1"). = 1 获取单元格 Cells(1, 2) Range("H7") 获取范围 Range(Cells(2, 3), Cells(4, 5)) Range("a1:c3") '用快捷记号引用单元格 Worksheets("Sheet1").[A1:B5] 选中某sheet Set NewSheet = Sheets("sheet1") 选中或激活某单元格 '“Range”对象的的Select方法可以选择一个或多个单元格,而Activate方法可以指定某一个单元格为活动单元格。 '下面的代码首先选择A1:E10区域,同时激活D4单元格: Range("a1:e10").Select

    Range("d4:e5").Activate '而对于下面的代码: Range("a1:e10").Select Range("f11:g15").Activate '由于区域A1:E10和F11:G15没有公共区域,将最终选择F11:G15,并激活F11单元格。 获得文档的路径和文件名 '路径 '名称 '路径+名称 '或将ActiveWorkbook换成thisworkbook 隐藏文档 = False 禁止屏幕更新 = False 禁止显示提示和警告消息 = False 文件夹做成 strPath = "C:\temp\" MkDir strPath 状态栏文字表示 = "计算中" 双击单元格内容变换 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If>= 5And<= 8) Then If= "●"Then = "" Else = "●" End If Cancel = True End If End Sub 文件夹选择框方法1 Set objShell = CreateObject("") Set objFolder = (0, "文件", 0, 0) If Not objFolder Is Nothing Then path= & "\" end if

    HTML代码大全

    HTML(HyperText Mark-up Language)即超文本标记语言或超文本链接标示语言,是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字、图形、动画、声音、表格、链接等。HTML的结构包括头部(Head)、主体(Body)两大部分,其中头部描述浏览器所需的信息,而主体则包含所要说明的具体内容。 编辑本段HTML代码大全 1.结构性定义 文件类型 (放在档案的开头与结尾) 文件主题 (必须放在「文头」区块内) 文头 (描述性资料,像是「主题」) 文体 (文件本体) (由浏览器控制的显示风格) 标题 (从1到6,有六层选择) 标题的对齐 区分

    区分的对齐
    引文区块
    (通常会内缩) 强调 (通常会以斜体显示) 特别强调 (通常会以加粗显示) 引文 (通常会以斜体显示) 码 (显示原始码之用) 样本 键盘输入 变数 定义 (有些浏览器不提供) 地址
    大字 小字 与外观相关的标签(作者自订的表现方式) 加粗 斜体 底线 (尚有些浏览器不提供) 删除线 (尚有些浏览器不提供) 下标 上标 打字机体 (用单空格字型显示) 预定格式
     (保留文件中空格的大小) 预定格式的宽度 
    (以字元计算) 向中看齐 
    (文字与图片都可以) 闪耀 (有史以来最被嘲弄的标签) 字体大小 (从1到7) 改变字体大小

    单片机指令表(最全)

    单片机指令以A开头的指令有18条,分别为: 1、ACALL addr11 指令名称:绝对调用指令 指令代码:A10 A9 A8 10001 A7 A6 A5 A4 A3 A2 A1 A0 指令功能:构造目的地址,进行子程序调用。其方法是以指令提供的11位地址(al0~a0),取代PC的低11位,PC的高5位不变。操作内容: PC←(PC)+2SP←(SP)+1 (SP)←(PC)7~0 SP←(SP)+1 (SP)←(PC)15~8 PC10~0←addrl0~0 字节数: 2 机器周期:2 使用说明:由于指令只给出子程序入口地址的低11位,因此调用范围是2KB。 2、ADD A,Rn 指令名称:寄存器加法指令指令代码:28H~2FH 指令功能:累加器内容与寄存器内容相加 操作内容:A←(A)+(Rn),n=0~7 字节数: 1 机器周期;1 影响标志位:C,AC,OV 3、ADD A,direct 指令名称:直接寻址加法指令指令代码:25H 指令功能:累加器内容与内部RAM单元或专用寄存器内容相加操作内容:A←(A)+(direct) 字节数: 2 机器周期:1 影响标志位:C,AC,OV 4、ADD A,@Ri ’ 指令名称:间接寻址加法指令指令代码:26H~27H 指令功能:累加器内容与内部RAM低128单元内容相加 操作内容:A←(A)+((Ri)),i=0,1 字节数: 1 机器周期:1 影响标志位:C,AC,OV 5、ADD A,#data 指令名称:立即数加法指令指令代码:24H 指令功能:累加器内容与立即数相加 操作内容:A←(A)+data 字节数: 2 机器周期:1 影响标志位:C,AC,OV 6、ADDC A,Rn 指令名称:寄存器带进位加法指令指令代码:38H~3FH 指令功能:累加器内容、寄存器内容和进位位相加 操作内容:A←(A)+(Rn)+(C),n=0~7 影响标志位:C,AC,OV 7、ADDC A,direct 指令名称:直接寻址带进位加法指令指令代码:35H 指令功能:累加器内容、内部RAM低128单元或专用寄存器内容与进位位加 操作内容:A←(A)+(direct)+(C) 字节数: 2 机器周期:1 影响标志位:C,AC,OV 8、ADDC A,@Ri 指令名称:间接寻址带进位加法指令指令代码:36H~37H 指令功能:累加器内容, 内部RAM低128单元内容及进位位相加操作内容:A←(A)+((Ri))+(C),i=0,1 字节数: 1 机器周期:1 影响标志位:C,AC,OV 9、ADDC A,#data 指令名称:立即数带进位加法指令指令代码:34H 指令功能:累加器内容、立即数及进位位相加 操作内容:A←(A)+data+(C) 字节数: 2 机器周期:1 影响标志位:C,AC,OV 10、AJMP addr11 指令名称:绝对转移指令 指令代码:A10 A9 A8 1 0 0 0 1 A7 A6 A5 A4 A3 A2 A1 A0 指令功能:构造目的地址,实现程序转移。其方法是以指令提供的11位地址,取代PC的低11位,.而PC的高5位保持不变。操作内容:PC←(PC)+2PCl0~0←addrll 字节数: 2 机器周期:2 使用说明:由于addrll的最小值是000H,最大值是7FFH,因此地址转移范围是2KB。 11、ANL A,Rn 指令名称:寄存器逻辑与指令指令代码:58H~5FH 指令功能:累加器内容逻辑与寄存器内容 操作内容:A←(A)∧(Rn),n=0~7 字节数: 1 机器周期:1 12、ANL A,direct 指令名称:直接寻址逻辑与指令指令代码:55H 指令功能:累加器内容逻辑与内部RAM低128单元或专用寄存器内容 操作内容:A←(A)

    EXCELVBA常用代码实战大全共393页word资料

    VBA常用技巧代码解析 yuanzhuping 1VBA VBAVBA VBA常用 常用常用 常用技巧 技巧技巧 技巧 目录 目录目录 目录 VBA VBAVBA VBA常用技巧 常用技巧常用技巧 常用技巧 ------------------------------------------------------------------------------------------------------- 1 第1章 Range(单元格)对象 -------------------------------------------------------------------- 10 技巧1 单元格的引用方法 ---------------------------------------------------------------------- 10 1-1 使用Range属性 ----------------------------------------------------------------------- 10 1-2 使用Cells属性 ------------------------------------------------------------------------ 11 1-3 使用快捷记号 -------------------------------------------------------------------------- 11 1-4 使用Offset属性 ----------------------------------------------------------------------- 12 1-5 使用Resize属性 ----------------------------------------------------------------------- 13 1-6 使用Union方法 ----------------------------------------------------------------------- 14 1-7 使用UsedRange属性 ---------------------------------------------------------------- 14 1-8 使用CurrentRegion属性 ------------------------------------------------------------ 15 技巧2 选定单元格区域的方法---------------------------------------------------------------- 15 2-1 使用Select方法 ----------------------------------------------------------------------- 15 2-2 使用Activate方法 -------------------------------------------------------------------- 16 2-3 使用Goto方法 ------------------------------------------------------------------------- 17 技巧3 获得指定行、列中的最后一个非空单元格 -------------------------------------- 17 技巧4 定位单元格 ------------------------------------------------------------------------------- 20

    C单片机指令集大全

    C单片机指令集大全 Document number【980KGB-6898YT-769T8CB-246UT-18GG08】

    格式功能简述字节数周期 一、数据传送类指令 MOVA,Rn寄存器送累加器11 MOVRn,A累加器送寄存器11 MOVA,@Ri内部RAM单元送累加器11 MOV@Ri,A累加器送内部RAM单元11 MOVA,#data立即数送累加器21 MOVA,direct直接寻址单元送累加器21 MOVdirect,A累加器送直接寻址单元21 MOVRn,#data立即数送寄存器21 MOVdirect,#data立即数送直接寻址单元32 MOV@Ri,#data立即数送内部RAM单元21 MOVdirect,Rn寄存器送直接寻址单元22 MOVRn,direct直接寻址单元送寄存器22 MOVdirect,@Ri内部RAM单元送直接寻址单元22 MOV@Ri,direct直接寻址单元送内部RAM单元22 MOVdirect2,direct1直接寻址单元送直接寻址单元32 MOVDPTR,#data1616位立即数送数据指针32 MOVXA,@Ri外部RAM单元送累加器(8位地址)12 MOVX@Ri,A累加器送外部RAM单元(8位地址)12 MOVXA,@DPTR外部RAM单元送累加器(16位地址)12 MOVX@DPTR,A累加器送外部RAM单元(16位地址)12

    MOVCA,@A+DPTR查表数据送累加器(DPTR为基址)12 MOVCA,@A+PC查表数据送累加器(PC为基址)12 XCHA,Rn累加器与寄存器交换11 XCHA,@Ri累加器与内部RAM单元交换11 XCHDA,direct累加器与直接寻址单元交换21 XCHDA,@Ri累加器与内部RAM单元低4位交换11 SWAPA累加器高4位与低4位交换11 POPdirect栈顶弹出指令直接寻址单元22 PUSHdirect直接寻址单元压入栈顶22 二、算术运算类指令 ADDA,Rn累加器加寄存器11 ADDA,@Ri累加器加内部RAM单元11 ADDA,direct累加器加直接寻址单元21 ADDA,#data累加器加立即数21 ADDCA,Rn累加器加寄存器和进位标志11 ADDCA,@Ri累加器加内部RAM单元和进位标志11 ADDCA,#data累加器加立即数和进位标志21 ADDCA,direct累加器加直接寻址单元和进位标志21 INCA累加器加111 INCRn寄存器加111 INCdirect直接寻址单元加121 INC@Ri内部RAM单元加111 INCDPTR数据指针加112

    Excel VBA编程的常用代码

    用过VB的人都应该知道如何声明变量,在VBA中声明变量和VB中是完全一样的! 使用Dim语句 Dim a as integer '声明a为整型变量 Dim a '声明a为变体变量 Dim a as string '声明a为字符串变量 Dim a as currency ,b as currency ,c as currency '声明a,b,c为货币变量 ...... 声明变量可以是:Byte、Boolean、Integer、Long、Currency、Single、Double、Decimal(当前不支持)、Date、String(只限变长字符串)、String * length(定长字符串)、Object、Variant、用户定义类型或对象类型。 强制声明变量 Option Explicit 说明:该语句必在任何过程之前出现在模块中。 声明常数 用来代替文字值。 Const ' 常数的默认状态是 Private。 Const My = 456 ' 声明 Public 常数。 Public Const MyString = "HELP" ' 声明 Private Integer 常数。 Private Const MyInt As Integer = 5 ' 在同一行里声明多个常数。 Const MyStr = "Hello", MyDouble As Double = 3.4567 选择当前单元格所在区域 在EXCEL97中,有一个十分好的功能,他就是把鼠标放置在一个有效数据单元格中,执行该段代码,你就

    可以将连在一起的一片数据全部选中。只要将该段代码加入到你的模块中。 Sub My_Select Selection.CurrentRegion.Select End sub 返回当前单元格中数据删除前后空格后的值 sub my_trim msgbox Trim(ActiveCell.Value) end sub 单元格位移 sub my_offset ActiveCell.Offset(0, 1).Select'当前单元格向左移动一格 ActiveCell.Offset(0, -1).Select'当前单元格向右移动一格 ActiveCell.Offset(1 , 0).Select'当前单元格向下移动一格 ActiveCell.Offset(-1 , 0).Select'当前单元格向上移动一格 end sub 如果上述程序产生错误那是因为单元格不能移动,为了解除上述错误,我们可以往 sub my_offset 之下加一段代码 on error resume next 注意以下代码都不再添加sub “代码名称” 和end sub请自己添加! 给当前单元格赋值 ActiveCell.Value = "你好!!!" 给指定单元格赋值 例如:A1单元格内容设为"HELLO" Range("a1").value="hello" 又如:你现在的工作簿在sheet1上,你要往sheet2的A1单元格中插入"HELLO" 1. sheets("sheet2").select

    网页html代码大全

    常用HTML代码解释 一、文字 1.标题文字.......... #=1~6;h1为最大字,h6为最小字 2.字体变化.......... 【1】字体大小.......... #=1~7;数字愈大字也愈大 【2】指定字型.......... 【3】文字颜色.......... rr:表红色(red)色码 gg:表绿色(green)色码 bb:表蓝色(blue)色码 rrggbb也可用6位颜色代码数字 3.显示小字体.......... 4.显示大字体.......... 5.粗体字.......... 6.斜体字.......... 7.打字机字体.......... 8.底线.......... 9.删除线.......... 10.下标字.......... 11.上标字.......... 12.文字闪烁效果.......... 13.换行(也称回车)
    14.分段 15.文字的对齐方向

    #号可为left:表向左对齐(预设值)center:表向中对齐right:表向右对齐P.S.

    之后的文字都会以所设的对齐方式显示,直到出现另一个

    改变其对齐方向,遇到


    标签时会自动设回预设的向左对齐。