Excel宏程序

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Sub Macro2()

'i = 1

r = 1

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

Do While Sheet1.Cells(i, 4) <> ""

i = i + 1

Loop '查找第四列为空的i 行

Do While Sheet1.Cells(i + 1, 4) = ""

i = i + 1

Loop '查找i 行且i+1 行不为空

r = i

i = i + 1

Do While Sheet1.Cells(i, 4) <> ""

Sheet1.Cells(r, 4) = Sheet1.Cells(r, 4) & " " & Sheet1.Cells(i, 4)

Rows(i).Select

Selection.Delete Shift:=xlUp

Loop

Loop

h = MsgBox("执行完毕!", 1)

End Sub

Sub Macro3()

'i = 1

r = 1

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

Do While Sheet1.Cells(i, 2) = ""

i = i + 1

Loop '查找第二列不为空的i 行

r = i

i = i + 1

Do While Sheet1.Cells(i, 2) <> ""

If Sheet1.Cells(i, 2) = Sheet1.Cells(r, 2) Then

Sheet1.Cells(i, 2) = ""

i = i + 1

Else

r = i

i = i + 1

End If

Loop

Loop

h = MsgBox("执行完毕!", 1)

'End Sub

Sub 按钮1_单击()

s = Cells(1, 1)

Cells(2, 1) = Right(s, Len(s) - InStrRev(s, "\")) End Sub

放在cells(1,1)中的.

还一个方法是

a=split(s,"\")

cells(2,1)=a(ubound(a))

Sub 字符分割()

Dim B

i = 0

h = 1

Do While Sheet1.Cells(h, 1) <> ""

s = Cells(h, 1)

B = Split(s, "|")

Do While i <= UBound(B)

If B(i) <> "" Then

Sheet1.Cells(h, i + 1) = B(i)

End If

i = i + 1

Loop

h = h + 1

i = 0

Loop

h = MsgBox("执行完毕!" & h, 1)

End Sub

Sub 取消单引号()

Dim rn As Range, r As Range

Dim sh As Worksheet

Set rn = edRange

For Each r In rn

If r.PrefixCharacter = "'" Then

t = r.Value

r.ClearComments

r.NumberFormatLocal = "@"

r.Value = t

End If

Next

End Sub

If SN = vbNullString Then SN =

If RN = 0 Then RN = ActiveCell.Row() '就是这一行,不知用什么办法引用才能等效于公式里的Row() CN = Excel.WorksheetFunction.Match(CT, Sheets(SN).Rows(1), 0)

sCol = Sheets(SN).Cells(RN, CN).Value

End Function

Sub 上下复制()

'

' 上下复制Macro

' 宏由许长安录制,时间: 2016-1-5

' Range("C131").Select

' Selection.Copy

' Range("C132").Select

' ActiveSheet.Paste

' Range("C133").Select

Row = 0

Col = 0

i = 1

j = 1

h = 1

Row = ActiveCell.Row()

Col = ActiveCell.Column()

Do While (Sheet1.Cells(Row, Col) <> "" And Row < 1500)

Do While (Sheet1.Cells(Row + i, Col) = "" And i < 400)

Sheet1.Cells(Row + i, Col) = Sheet1.Cells(Row, Col)

i = i + 1

Loop

Row = Row + i

i = 1

Loop

h = MsgBox("执行完毕!" & Row & "|" & Col, 1)

End Sub

相关文档
最新文档