怎样编写代码控制excel数据
⑴ 怎样在excel中运行代码
第一步、首先,打开Excel表格程序,进入到Excel表格程序主界面中。
⑵ excel如何编程 在EXCEL中如何编写程序
1、打开excel软件,点击左上角“文件”。
2、点击选项。
3、在excel选项界面点击自定义功能区,勾选开发工具,点击确定。
4、开启开发工具后就可以在主菜单上看到开发工具选项卡了,需要打开VBA就在开发工具选项卡点击visualbasic即可。
5、写一个简单代码,在VBA窗口选择插入-模块,新建一个模块。点击模块1,在右边编辑框输入代码。
6、代码编写完成后,在Excel界面上点击开发工具--宏--选择名字a--执行,即可执行a代码;运行完成后,A1的内就变成了“这是我的第一个代码”。
⑶ 怎样在EXCEL中插入一个按钮,实现对数据的简单控制
实现A1+1很简单
把下面代码复制进工作表的宏代码框
然后选择 开发工具--插入按钮--选择“A1加1()”这个宏即可
Sub A1加1()
Range("A2").Select
Dim i
i = Range("a1")
Range("a1") = i + 1
End Sub
⑷ 如何在c#下读取EXCEl表格中的数据,最好写一段代码
(转)
创建、打开、读取、写入、保存的一般性代码:
usingSystem;
usingSystem.Reflection;//引用这个才能使用Missing字段
namespaceCExcel1
{
classClass1
{
[STAThread]
staticvoidMain(string[]args)
{
//创建Application对象
Excel.ApplicationxApp=newExcel.ApplicationClass();
xApp.Visible=true;
//得到WorkBook对象,可以用两种方式之一:下面的是打开已有的文件
Excel.WorkbookxBook=xApp.Workbooks._Open(@"D:\Sample.xls",
Missing.Value,Missing.Value,Missing.Value,Missing.Value
,Missing.Value,Missing.Value,Missing.Value,Missing.Value
,Missing.Value,Missing.Value,Missing.Value,Missing.Value);
//xBook=xApp.Workbooks.Add(Missing.Value);//新建文件的代码
//指定要操作的Sheet,两种方式:
Excel.WorksheetxSheet=(Excel.Worksheet)xBook.Sheets[1];
//Excel.WorksheetxSheet=(Excel.Worksheet)xApp.ActiveSheet;
//读取数据,通过Range对象
Excel.Rangerng1=xSheet.get_Range("A1",Type.Missing);
Console.WriteLine(rng1.Value2);
//读取,通过Range对象,但使用不同的接口得到Range
Excel.Rangerng2=(Excel.Range)xSheet.Cells[3,1];
Console.WriteLine(rng2.Value2);
//写入数据
Excel.Rangerng3=xSheet.get_Range("C6",Missing.Value);
rng3.Value2="Hello";
rng3.Interior.ColorIndex=6;//设置Range的背景色
//保存方式一:保存WorkBook
xBook.SaveAs(@"D:\CData.xls",
Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,
Excel.XlSaveAsAccessMode.xlNoChange,Missing.Value,Missing.Value,Missing.Value,
Missing.Value,Missing.Value);
//保存方式二:保存WorkSheet
xSheet.SaveAs(@"D:\CData2.xls",
Missing.Value,Missing.Value,Missing.Value,Missing.Value,
Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value);
//保存方式三
xBook.Save();
xSheet=null;
xBook=null;
xApp.Quit();//这一句是非常重要的,否则Excel对象不能从内存中退出
xApp=null;
}
}
}
⑸ 求一用于EXCEL中处理数据的宏代码!
Sub 替换()
Dim rg, cel As Object
Set rg = Application.InputBox("请选择第一列姓名", , "range", , , , , 8)
For Each cel In rg
If cel = "张三" And cel.Offset(, 1) = "张三丰" Then cel.Offset(, 1) = cel.Offset(, 2): cel.Offset(, 2) = "三四"
If cel = "李四" And cel.Offset(, 1) = "李四通" Then cel.Offset(, 1) = cel.Offset(, 2): cel.Offset(, 2) = "三四"
Next
End Sub
点开图片查看
⑹ excel中用vba编写限制excel使用次数的代码
Private Sub Workbook_Open()
Worksheets(2).ScrollArea = "A1:IV65535"
If Sheets("Sheet2").Cells(65536, 256).Value < 3 Then
Sheets("Sheet2").Cells(65536, 256).Value = Sheets("Sheet2").Cells(65536, 256).Value + 1
ActiveWorkbook.Save
Else
a = InputBox("请输入密码", "密码验证")
If a <> "abc" Then
Application.Quit
End If
End If
End Sub
打开次数的存放的解决办法:我选择存放在Sheet2的最下脚,并将Cells(65536, 256).设置为白色。然后将最后一行放弃(使不能选择)这样用户就看不到这个数字,就是看到了也不能修改
然后你可以去将你的宏加入数字签名。这样就可以强制使用宏了。
有什么新发现或者更好的办法也告诉我一声
⑺ 急求excel中函数或VB代码实现控制单元格数据
如图我的理解是:A1的值是B列中“A”的个数,A2的值是B列中“B”的个数。。。
按此思路,以下宏满足你的要求,且可随时更改A列中各值
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
Dim bf, aRow, bRow, a, b, bLine, aArr, bArr
Range("B:B").ClearContents
aRow = [A1000].End(xlUp).Row
If aRow = 1 Then
bLine = Target.Value
bArr = Range("B1:B" & bLine).Value
For b = 1 To bLine
bArr(b, 1) = "A"
Next
Else
aArr = Range("A1:A" & aRow).Value
For a = 1 To aRow
bLine = bLine + aArr(a, 1)
Next
bArr = Range("B1:B" & bLine).Value
bRow = 1
For a = 1 To aRow
If Len(bf) Then
bf = Chr(Asc(bf) + 1)
Else
bf = "A"
End If
For b = bRow To aArr(a, 1) + bRow - 1
bArr(b, 1) = bf
Next b
bRow = bRow + aArr(a, 1)
Next a
End If
Range("B1:B" & bLine) = bArr
End If
End Sub
代码已验证,可放心使用
⑻ 在EXCEL中如何编写程序
程序,即Excel中的VBA,有很多方法可以进入VBA设计界面
这里说一下一种比较傻瓜式的办法,适用于当获得一段代码直接使用的情况
详细步骤如下:
1.开发工具,录制宏
⑼ EXCEL宏代码编写
给你把每句的含义写上注释吧,因为你的目标不是很明确,你根据注释稍做修改就可以用了
Sub Macro7()
'
' Macro7 Macro
' 宏由 qx 录制,时间: 2007-4-2
'
'
Charts.Add '增加EXCEL图表
ActiveChart.ChartType = xlLineMarkers '指定刚刚新加的EXCEL图表类型
ActiveChart.SetSourceData Source:=Sheets("Sheet7").Range("G5:G34"), PlotBy _
:=xlColumns '指定刚刚新加的EXCEL图表数据源,如果数据源发生变化,修改("Sheet7")为相应工作表名,("G5:G34")为相应区域即可
ActiveChart.Location Where:=xlLocationAsObject, Name:="Sheet7"
With ActiveChart
.HasAxis(xlCategory, xlPrimary) = True
.HasAxis(xlValue, xlPrimary) = True
End With '指定刚刚新加的EXCEL图表的坐标
ActiveChart.Axes(xlCategory, xlPrimary).CategoryType = xlAutomatic '指定刚刚新加的EXCEL图表的坐标格式
ActiveWindow.Visible = False '把当前窗口隐藏,这句挺奇怪的
Windows("Instry_by_province.xls").Activate '激活指定EXCEL文件
Sheets("Sheet7").Select '激活指定的工作表,此处也就是数据源表
End Sub
---------------------------------------------------------
我给你做最最简单的修改吧,在开始由你指定数据源和图表所在工作表的名称。有什么问题可以再问,关键是你想怎么做。
Sub Macro7()
'
' Macro7 Macro
' 宏由 qx 录制,时间: 2007-4-2
'
'
strSheetName=InputBox("请输入数据源Sheet名")
Charts.Add '增加EXCEL图表
ActiveChart.ChartType = xlLineMarkers '指定刚刚新加的EXCEL图表类型
ActiveChart.SetSourceData Source:=Sheets(strSheetName).Range("G5:G34"), PlotBy _
:=xlColumns '指定刚刚新加的EXCEL图表数据源,如果数据源发生变化
ActiveChart.Location Where:=xlLocationAsObject, Name:=strSheetName
With ActiveChart
.HasAxis(xlCategory, xlPrimary) = True
.HasAxis(xlValue, xlPrimary) = True
End With '指定刚刚新加的EXCEL图表的坐标
ActiveChart.Axes(xlCategory, xlPrimary).CategoryType = xlAutomatic '指定刚刚新加的EXCEL图表的坐标格式
ActiveWindow.Visible = False '把当前窗口隐藏,这句挺奇怪的
Windows("Instry_by_province.xls").Activate '激活指定EXCEL文件
Sheets(strSheetName).Select '激活指定的工作表,此处也就是数据源表
End Sub
⑽ excel VBA和宏写代码实现数据读取和计算。
其实就是两个操作。
1、统计M列,区域:连续360个以上的单元格都为0,这样的区域总共有多少个?
2、将M列所有数字为1的单元格,填充色改为其它颜色(例如红色)。
相应完整VBA代码如下:
Subcount01_by_zzllrr()
Dimn,n0,n1,i,v
n=0
n0=0
n1=False
IfRange("M1")=0Then
n0=1
EndIf
Fori=2ToColumns("M:M").Find("*",,,,1,2).Row
v=Range("M"&i)
Ifv=1Then
Range("M"&i).Interior.Color=255
Ifn0>360Then
n=n+1
EndIf
n0=0
IfNotn1Then
n1=True
EndIf
Else
Ifn1Then
n0=n0+1
EndIf
EndIf
Nexti
Range("N1")=n
MsgBox("总共"&n&",且已填写在单元格N1")
EndSub