If Target.Column = 6 And Target.Row > 2 And Row < 21 Then
a = Target.Value
Target.Value = a * 10.22 * 20
End If
Application.EnableEvents = True
End Sub
自动输入‘要点’两个字
工作表中有500行数据、F3中包含红色的字符、F7中包含红色的字符、.....
想要达成的目的:如果F列的单元格中包含红色的字符,则在其同一行的G列中自动输入‘要点’两个字。请高手赐教!!
解答:有一個取巧的方法,請參考
On Error Rescom Next
For i = 1 To 500
Color_Index = Cells(i, "F").Font.ColorIndex
If IsNull(Color_Index) Then
Cells(i, "G") = "要點"
End If
Next i
表格更新
是这样的,比如我已经有了一个原始表格A,这时有人通知我A表有错误,须加以修改,并给我一个表B,表B列出了须修改的参数(注意B的列数少于A的列数,因A的其它列无需修改)。现在问题是如何根据表B中的新值,在表A中找到相应位置,并加以修改。比如表B中列出了10002的JOHN的身高和体重等值需要修改,如何在A中找到10002的相应位置(身高体重),并加以修改。
解答:建议将表B复制至表A的SHEET2,然后执行下列的宏即可
Sub change()
Dim dd As Range
Sheets(2).Select
lastcell = Range("a65536").End(xlUp).Row
For Each dd In Range(Cells(2, 1), Cells(lastcell, 1))
If dd = "" Then Exit Sub
ff = dd.value
Set c = Sheets(1).Columns(1).Find(ff, lookat:=xlWhole)
If Not c Is Nothing Then
c.Offset(0, 2) = dd.Offset(0, 2)
c.Offset(0, 3) = dd.Offset(0, 3)
c.Offset(0, 5) = dd.Offset(0, 4)
End If
Next
End Sub
公式的自动填充
一张表中某几个不连续的列有公式,我不想一次全复制下去,最好是让它自动填充上一行的公式,这样用多少就自动填下去,不知道有没有办法。
解答:Dim Mrow, Xrow, i As Integer
Mrow = Range("a65536").End(xlUp).Row
Xrow = Range("d65536").End(xlUp).Row + 1
Application.ScreenUpdating = False
For i = Xrow To Mrow
If Cells(i, 1) <> "" Then
Cells(i, 4) = Cells(i - 1, 4) + Cells(i, 2) - Cells(i, 3)
Cells(i, 6) = Cells(i, 2) * Cells(i, 5)
Cells(i, 8) = Cells(i - 1, 8) - Cells(i, 7) + Cells(i, 6)
Cells(i, 7) = Cells(i, 5) * Cells(i, 3)
End If
Next i
Application.ScreenUpdating = True
先输入其它列数据,最后再输入日期.
我想A1的值=A1+B1;其中B1为变量,A1为累计值
解答1:用VBA实现。
For i=1 to n
A1=sheet1.cells(1,1)
A1=A1+B1
sheet1.cells(1,1)=A1
next n
解答2:好象不用那么麻烦。选择B1单元格,复制,选择A1单元格,选择xìng粘贴(数值,加)即可。
让"工资总计"等于几个打开的各个工作薄的最后一个工作表中的"工资"和
解答:把几个"工资"单元格定义为名称"工资"(方法:chā入/名称/定义,在引用位置中选中几个要相加的单元格,把这些区域定义为"工资"),在"工资总计"中输入公式 =sum(工资) 即可!或:先打开宏记录器,然后你手工做一遍,最后停止纪录,在vba编辑其中编辑相应的代码即可!如果只是想用公式解决,可以用sum函数,利用三维引用可以解决此问题
方法3:Sub DD()
For i = 1 To Workbooks.Count
'bookncom = Workbooks(i).Ncom
'If bookncom <> "ncom" Then '可自行判断名称"主控Workbook"不列入加总
last = Workbooks(i).Sheets.Count '最后一页(亦可用SHEETS名称判断加总)
sum1 = sum1 + Workbooks(i).Sheets(last).Range("a1") 'A1:工资
'End If
Next i
[B1] = sum1
End Sub
有两个表,表1、表2,其中的数据有相同的,如何比较出两个表中的相同的数据
解答:For i=1 to a(行数)
For j=1 to b(列数)
Da(i,j)=sheets(1).cells(i,j)
Db(i,j)=sheets(2).cells(i,j)
Next j
Next i
For i=1 to a(行数)
For j=1 to b(列数)
For m=1 to a(行数)
For n=1 to b(列数)
If Da(i,j)= Db(m,n) then
K=k+1
sheets(3).cells(k,1)= Da(i,j)
end if
Next n
Next m
Next j
Next i
或:用函数vlookup寻找即可。
请问如何在窗体中播放动画
解答:Sub 动画()
'先作个
松语文学免费小说阅读_www.16sy.com