小编Lan*_*rts的帖子

Excel中的嵌套IF语句[超过7个允许的限制]

我正在尝试创建一个电子表格,根据他们的分数自动为学生提供成绩.

我显然已经达到Excel的嵌套IF语句限制,即7.

这是我的if语句:

=IF(O5>0.895,"A+",IF(O5>0.845,"A",IF(O5>0.795,"A-",IF(O5>0.745,"B+",IF(O5>0.695,"B",IF(O5>0.645,"B-",IF(O5>0.595,"C+",IF(O5>0.545,"C","D"))))))))
Run Code Online (Sandbox Code Playgroud)

我在网上看到我可以创建一个VBA脚本然后分配它,但我对VBA一无所知....所以如果有人可以帮我写一个VBA,那就太棒了.

它仍然缺少C级和任何低级应该被授予D标记.

这是我试图创建的评分方案......:

A + 89.500 - 100.000通过优异

84.500 - 89.490优异传球

A- 79.500 - 84.490优异成绩

B + 74.500 - 79.490优异通行证

B 69.500 - 74.490优异成绩

B- 64.500 - 69.490优异成绩

C + 59.500 - 64.490通过

C 54.500 - 59.490通行证

C- 49.500 - 54.490通过

D 0.000 - 49.490指定失败

我不介意去VBA路线,但是我对VB语言的理解绝对是最小的(不喜欢它)...如果这太繁琐了,我想创建一个小的php/mysql应用程序.

excel vba if-statement nested worksheet-function

9
推荐指数
2
解决办法
1万
查看次数

C中的read()和fgets()之间的区别

我想从stdin流中读取.使用read()或fgets()从stdin流中读取是否有任何区别.

我用fgets附加以下两段代码并读取.使用fgets,我可以使用java程序轻松地编写和读取c程序.随着读写,我的java程序挂起等待C程序的输出,而不是来.

我只是读了一行保持它在buf并附加A到它.

Java程序能够与以下程序通信,该程序与fgets和puts一起使用.

#include <stdio.h>
#include <string.h>
#define SIZE  200000
main()
{
int rc;
int df;
int i;
char buf[SIZE];
for(i=0;i<=120000;i++) {
      memset(buf,'\0',SIZE);
      if(!fgets(buf,SIZE-1,stdin))
        continue;
      strcat(buf,"A_A_A_A_A_A_A");
      puts(buf);
}
Run Code Online (Sandbox Code Playgroud)

}

但没有read()和write()

main()
{
int rc;
int df;
int i;
char buf[32768];
rc = fcntl(fileno(stdin), F_SETFL, O_NONBLOCK);
//rc = fcntl(fileno(stdout), F_SETFL, O_NONBLOCK);
FILE *fp;
for (;;) 
{
    int rc=-1;
    memset(buf,'\0',32768);
    //rc = fread(buf,5, 1, stdin);
    rc = read(fileno(stdin),buf,32768); 
    if (rc > 0)
    {
        strcat(buf,"B_B_B_B_B_B_B_B_B");
        write(fileno(stdout),buf,strlen(buf));

    }
}
Run Code Online (Sandbox Code Playgroud)

}

有人可以说出原因.我仍然觉得很难弄明白

c fgets

9
推荐指数
2
解决办法
1万
查看次数

如何从工作表函数中的数组中提取子数组?

有没有办法在Excel中获取比单元格工作表函数中的起始数组更小的数组?

所以,如果我有:

{23, "", 34, 46, "", "16"}
Run Code Online (Sandbox Code Playgroud)

我最终得到:

{23, 34, 46, 16}
Run Code Online (Sandbox Code Playgroud)

然后,我可以使用其他一些功能进行操作.

结论:如果我要做很多这些,我肯定会使用jtolle的UDF梳子解决方案.PPC使用的公式很接近,但潜入并测试,我发现它在空插槽中出错,错过了第一个值,并且有更简单的方法来获取行号,所以这是我的最终解决方案:

=IFERROR(INDEX($A$1:$A$6, SMALL(IF(($A$1:$A$6<>""),ROW($A$1:$A$6)),ROW(1:6))),"")
Run Code Online (Sandbox Code Playgroud)

必须以数组公式(CTRL-SHIFT-ENTER)输入.如果显示,则必须至少输入与结果集一样大的区域以显示所有结果.

arrays excel worksheet-function

9
推荐指数
2
解决办法
4万
查看次数

获取C中时区的夏令时转换日期

在C中,是否有一种简单的跨平台方法来检索给定时区开始和结束夏令时的日期?

我已经有时区偏移信息以及当前是否正在观察夏令时,但我确实需要夏令时开始和结束的日期(对于我无法控制的外部依赖).在Windows中,我使用GetTimeZoneInformation来获取TimeZoneInfo,但我找不到类似的Linux/Solaris/Mac功能.我还应该指出,我不能仅仅依靠美国的夏令时采用规则,因为我无法预测它将被用于的国家.

我知道获取此信息的唯一方法是通过zdump或者直接查看/ usr/share/lib/zoneinfo文件本身,但我希望有更好的解决方案.

感谢您的任何帮助,您可以提供.

c timezone dst

8
推荐指数
2
解决办法
6157
查看次数

隐藏的工作表或工作簿上可以执行哪些Excel VBA操作?

隐藏的工作表/工作簿对VBA代码中可以做的事情有一些限制,比如大多数SelectSelection语句,以及来自的任何内容ActiveSheet,但我似乎无法找到任何限制的列表.

Google,帮助系统中的内置文档以及MSDN的网站都让我失望.谁能指出我正确的方向?

编辑:打开工作簿

Set WB_Master = Workbooks.Open(Filename:=PATH_Master, ReadOnly:=False)
Run Code Online (Sandbox Code Playgroud)

然后隐藏着

WB_Master.Windows(1).Visible = False
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba

8
推荐指数
2
解决办法
6万
查看次数

如何从另一个Excel工作簿中调用特定于表的宏?

我正在尝试调用另一个工作簿中的Excel宏.它是一个特定于表的宏,但Microsoft文档和Web上的研究给出的语法只提供了一种仅通过工作簿访问宏的方法.该语法是:

Application.Run ("testworkbook.xls!macroname")
Run Code Online (Sandbox Code Playgroud)

我需要做的是在那里有一个工作表参考,如:

Application.Run ("testworkbook.xls!Sheet1.macroname")
Run Code Online (Sandbox Code Playgroud)

我已经尝试过这个和许多其他变体,包括在那里有单引号或双引号,但我总是得到无法找到宏的消息.

编辑: 通过所有线索和大量测试,我找到了答案.您可以访问特定于Sheet的子,但必须使用像'Sheet1'这样的规范名称,您不能使用实际的工作表名称.显然其他工作簿不访问该信息.

因此,只要您不尝试使用工作表名称,上述格式就可以工作(您可能必须单引用工作簿名称(通过连接CHR(39)到任一端).

excel vba

8
推荐指数
1
解决办法
6万
查看次数

如何摆脱VBA安全警告

我使用VBA开发了一个Access应用程序.每次我打开Access,我都会得到以下信息:

https://lh5.googleusercontent.com/wgn5B5PllVXGuG6W4_xiFa1rouSpDSn27MC0nzPkgJ5CPN8BKpAn-gDFsVS4GZtepY-c4jtbEupKeV227ogICQlzcg=s512

我必须单击选项 - > 启用内容才能运行我的宏.这个应用程序将由几个不太懂技术的人共享.因此,根据要求,我必须删除它.我已经尝试过签名/打包数据库,但它仍然没有摆脱警告.

ms-access vba warnings

8
推荐指数
2
解决办法
3万
查看次数

按特定位置和经度获取屏幕坐标(android)

我有一个增强现实的应用程序,我已经存储了相应的纬度和经度,如地铁,加油站,名胜古迹等信息.

现在,根据设备的方向,我会在设备的摄像机视图中显示每个站点的标记.与Layar和Wikitude相似.

它需要三天不停地搜索,并没有找到任何人解释如何解决这个问题.

android latitude-longitude augmented-reality

8
推荐指数
1
解决办法
5306
查看次数

Excel工作簿打开事件宏并不总是运行

我有一个Workbook_Open事件宏(并且它在ThisWorkbook中)并不总是运行.

  • 如果Excel已关闭,我从Windows资源管理器中双击.xls文件,它会运行.
  • 如果我从开始/程序启动Excel(没有.xls文件),然后打开该文件,它会运行.
  • 如果我已经在Excel中打开文件,但随后关闭文件(保持Excel打开)并重新打开它,则宏不会运行.

我已将安全性设置为中等,并且只要它打开就会启用宏.

每当我打开它时,我需要做什么才能让宏运行,而不仅仅是第一次进行此Excel会话?

(顺便说一句,这是Excel 2003)

excel events vba excel-2003

8
推荐指数
1
解决办法
3万
查看次数

在非基于文档的应用程序Cocoa中"另存为"

我正在开发一个基本上通过shell脚本使用"sox"创建文件的项目.该应用程序不是基于文档的,它所做的只是调用创建文件的脚本,而不是在内部保存任何数据.但是,我需要提示用户保存文件的位置,以及在运行脚本之前要使用的文件名.有一个"另存为..."对话框从用户获取文件路径/文件名以传递给shell脚本的最佳方法是什么?

unix macos cocoa save-as nssavepanel

8
推荐指数
1
解决办法
3779
查看次数