扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
分类: 电脑/网络 程序设计 其他编程语言
成都创新互联公司长期为成百上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为沐川企业提供专业的成都网站制作、网站建设,沐川网站改版等技术服务。拥有10余年丰富建站经验和众多成功案例,为您定制开发。
问题描述:
如何用excel函数实现类似以下的功能:
A1、B1分别为两个单元格
switch(A1){
case 'morning': B1=8;
case 'evening': B1=10;
........
}
程序要实现的功能是当A1等于'morning'时,B1的内容自动为数值'8',当A1等于'evening'时,B1的内容自动为数值'10'
解析:
可能没有这样的函数,只能多用几个if嵌套
在B1中输入
=IF(EXACT(A1,"morning"),8,IF(EXACT(A1,"evening"),10))
if格式为 if(逻辑运算符,条件为真时的值,条件为假时的值)
exact(文本1,文本2)为比较俩文本是否相同的函数
有C语言的基础相信你能看懂的
不过嵌套的层数有没有限制就不知道了...
EXCEL
只能做极其简单的运算,函数功能很差。与C不通用。EXCEL
是用
VB
写的。
printf
scanf
getchar
getch
都是基本输入输出函数。
-f
是
format
,(格式)
printf
有格式
输出
scanf
有格式
输入
getchar
和
getch
都是
输入
字符的函数。
函数
的参数和
返回值得定义
要查
帮助文件。(用几次,就熟悉了)
据我所知,Excel中的自定义函数都是用VBA写的,要想使用C的自定义函数,必须将C函数嵌入到VBA代码中。
1.写操作 第一步:单纯C语言写入Excel文件只能是 *.csv的后缀文件(是和txt一样,以二进制文本形式存储,它是以都逗号分隔符做个单元格内容的划分, .xls存储比较复杂, .csv文件可以可以通过...
2.读操作 读取文件 对于读取Excel文件的操作,使用了文件随机定位函数fseek(),它的一般调用格式如下: fseek...
3.最新补充 2018.08.28 由于经常有朋友告诉我运行结果是0 ,并将他们的工程发到我...
先要确定你使用哪个框架来操作EXCEL,aspose、NPOI都很好用,你先每列的第一个单元格检查是否有数据,如果没有就终止检查,找到第一个单元格是非空的那些列以后,再逐行的单元格检查,看那些行没有数据,检查到单元格为空就退出当前列
简单的方法是通过ODBC来实现:
具体实现
一、 包含Excel文件操作类头文件
#include "CSpreadSheet.h"
二、 新建Excel文件,并写入默认数据
// 新建Excel文件名及路径,TestSheet为内部表名
CSpreadSheet SS("c:\\Test.xls", "TestSheet");
CStringArray sampleArray, testRow;
SS.BeginTransaction();
// 加入标题
sampleArray.RemoveAll();
sampleArray.Add("姓名");
sampleArray.Add("年龄");
SS.AddHeaders(sampleArray);
// 加入数据
CString strName[] = {"徐景周","徐志慧","郭徽","牛英俊","朱小鹏"};
CString strAge[] = {"27","23","28","27","26"};
for(int i = 0; i sizeof(strName)/sizeof(CString); i++)
{
sampleArray.RemoveAll();
sampleArray.Add(strName[i]);
sampleArray.Add(strAge[i]);
SS.AddRow(sampleArray);
}
SS.Commit();
三、 读取Excel文件数据
CSpreadSheet SS("c:\\Test.xls", "TestSheet");
CStringArray Rows, Column;
//清空列表框
m_AccessList.ResetContent();
for (int i = 1; i = SS.GetTotalRows(); i++)
{
// 读取一行
SS.ReadRow(Rows, i);
CString strContents = "";
for (int j = 1; j = Rows.GetSize(); j++)
{
if(j == 1)
strContents = Rows.GetAt(j-1);
else
strContents = strContents + " -- " + Rows.GetAt(j-1);
}
m_AccessList.AddString(strContents);
}
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流