永发信息网

求大神帮我给这段VBA代码写个说明,菜鸟不太懂,求excel宏高手帮我在每一句后面标个释义,非常谢谢。

答案:2  悬赏:30  手机版
解决时间 2021-04-04 08:37
  • 提问者网友:末路
  • 2021-04-04 05:10
Sub fp1()
Sheet6.Range("D38").Formula = "=D39"
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next '设置错误处理
Application.ScreenUpdating = False '关闭屏幕刷新
Dim Mypath As String
Dim Myname As String
Dim Inrange As Range
Dim Mytext As String
Dim Myaddress As String
Dim pictemp As Variant
If Target.Count <> 1 Then Exit Sub
Target.Offset(-3, -5).Select
Mytext = Target.Value
ActiveSheet.Pictures(Mytext).Delete '删除单元格中原来的图片
picPath = ThisWorkbook.Path & "\Seal Library\" & Mytext & ".jpg" '定义插入图片的地址
Set pictemp = ActiveSheet.Pictures.Insert(picPath) '插入图片
pictemp.Name = Mytext '设定所插入图片的名称
With pictemp.ShapeRange
.PictureFormat.TransparentBackground = msoTrue
.PictureFormat.TransparencyColor = RGB(255, 255, 255)
End With
Set pictemp = Nothing '重置图片对象
Application.ScreenUpdating = True '打开屏幕刷新
Sheet1.Activate
End Sub
Sub fpsc1()
ActiveSheet.DrawingObjects.Delete
End Sub
最佳答案
  • 五星知识达人网友:迷人又混蛋
  • 2021-04-04 05:17
Sub test()
Dim PathB$, CopyPath$, SearchStr$
Dim Rg As Range
PathB = "D:\复制\b.xls"
''B文件路径
CopyPath = "d:\目标文件夹\"
''复制文件夹路径
SearchStr = InputBox("请输入内容", "提示")
''弹出输入框输入内容
If SearchStr = "" Then Exit Sub
''没有输入退出过程
Set Rg = Columns(1).Find(SearchStr, lookat:=xlWhole)
''在现有工作表第一列搜索输入内容
If Rg Is Nothing Then
''如果未搜索到指定内容
MsgBox "未找到输入内容"
''弹出提示
Else
''如果搜索到指定内容
Dim WB As Workbook
Set WB = Workbooks.Open(PathB)
''打开b工作簿
'''将A16的信息复制到Excel15014的AK1:AZ2中;将B16的信息复制到excel15014的
''I5:AA6单元格中;将D16的信息复制到excel15014的I7:AA8单元格中;将E16的''
''信息复制到excel15014的I9:AA10单元格中等等
with WB.Sheets(1)
.Cells(1, "ak")=rg
.Cells(5, "i")=rg.offset(,1)
.Cells(7, "i")=rg.offset(,3)
.Cells(9, "i")=rg.offset(,4)
end with
On Error Resume Next
''容错处理,文件夹已存在继续执行
MkDir CopyPath & SearchStr
''''在目标文件夹下,建立以搜索内容命名的文件夹B
'On Error GoTo 0
''回到正常错误处理
WB.SaveAs CopyPath & SearchStr & "\" & SearchStr & ".xls", 50
''B文件重命名为搜索内容,并保存在新建的文件夹B
WB.Close True
''保存更改内容并关闭b文件
End If
End Sub
''三个问题回答你三遍,你能不采纳么?
全部回答
  • 1楼网友:拾荒鲤
  • 2021-04-04 06:42
我不认为我是高手,但却是用vba解决过不少实际问题。当师傅也没资格,这几乎得手把手教。不过我是自学的。 下面是我当初学习excel宏的方法: 1. 点菜单的工具,宏,录制宏,做一些简单的动作,如在a1输入1,在b1输入 =a1*2,将b1的字体颜色设为红色,停止录制。同时按alt和f11进入vba界面,在左上窗口找到模块一,双击,右边窗口出来了你录制的宏的代码。懂英语最好了,一句一句就象白话文:) 宏代码里,把光标移到任意一个单词前面,按f1,就有解释和例子。 2. 裘伯君说:编程只需掌握判断语句。vba中典型的判断语句如下: if 某条件 then 一些语句 else 又一些语句 end if 简单的if语句可以是 if 某条件 then 一些语句 end if 更简单的判断语句为 if 某条件 then 一语句 举例,在你录制的代码处粘贴以下宏: sub test() if 5 > 2 then msgbox "i love u!" end sub 按f5运行此宏,你会看到一消息框,“i love u!" 所有的操作无非是一大堆逻辑判断,即if语句中再套if语句。 3. 除了判断语句,还应掌握循环语句,应为电脑擅长的就是重复工作:) 粘贴以下代码在有你录制宏的地方: sub test2() for i = 1 to 10 cells(i,1)=i cells(i,1).font.colorindex = i next i end sub 把宏的窗口变小些,让你能看到excle表格的a列,在宏的窗口中重复按f8,看excle里的变化。 for ... to ... 一些语句 next 是经典的循环语句,刚才那个代码的意思是从1重复到10,其中cells(i,1)是工作表中的第i行第1列,font.colorindex你录制的第一个宏里有的,就是设字体颜色。 多来qq问问中搜搜,比如直接搜vba,或者点我的名字看有哪些vba的问题:)
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯