小编Jak*_*e88的帖子

并且在VBA中也是/ OrElse

我正在尝试通过执行以下操作在Excel宏中使用"和"进行惰性评估:

If Not myObject Is Nothing *And* myObject.test() Then
    'do something'
Else
    'do something else'
End If
Run Code Online (Sandbox Code Playgroud)

我知道在VB.NET中存在懒惰的评估AndAlso,OrElse但在VBA中找不到类似的东西.如果VBA中不存在惰性求值,那么构造代码的最佳方法是什么,以便评估我期望的方式?

vb.net vba

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

用于加载Excel(.xls)文件的C++库

我正在寻找一个可以在Windows和Linux中加载.xls文件的免费C++库.如果我不得不做出选择,那么Linux将是最低限度的.

我试过LibXL,但得到了这个惊人的错误:

"在试用版中无法读取更多单元格"

所以现在我正在寻找一个免费版本:),遗憾的是xlsLib不提供加载现有.xls文件的能力.

谢谢

c++ excel parsing

11
推荐指数
1
解决办法
5万
查看次数

Ansible中的幂等和随机变量

有没有办法保证使用随机生成的变量的剧本的幂等性?

例如,我想设置我的crontabs在不同时间触发多个服务器上的电子邮件,所以我使用ansible的set_fact模块创建随机整数:

  tasks:
  - set_fact:
      first_run_30="{{ 30 | random }}"
    run_once: yes
Run Code Online (Sandbox Code Playgroud)

然后使用ansible将生成的变量应用于我的crontab,如下所示:

   - name: Setup cron30job
    cron: name=cron30job minute={{first_run_30}},{{first_run_30 | int + 30}} job='/bin/bash /cron30job.sh' state=present user=root
    environment:
      MAILTO: 'me@somelist.com'
      MAILFROM: 'me@somehost.com'
Run Code Online (Sandbox Code Playgroud)

这很有效,但是,我相信,ansible的无效原则是使用这种策略打破的,因为每次玩游戏都会看到一个变化:

TASK: [Setup cron30job] ***************************************** 
changed: [127.0.0.1]
Run Code Online (Sandbox Code Playgroud)

此外,在三次单独运行期间每次在root下检查crontab:

[ansible]# cat /var/spool/cron/root 
#Ansible: cron30job
5,35 * * * * /bin/bash /sw/test/cron30job.sh
#Ansible: cron30job
9,39 * * * * /bin/bash /sw/test/cron30job.sh
#Ansible: cron30job
6,36 * * * * /bin/bash /sw/test/cron30job.sh
Run Code Online (Sandbox Code Playgroud)

如果有一种解决方法,或者在我的场景中无法实现无效,我想知道.

cron ansible

10
推荐指数
2
解决办法
2684
查看次数

如何使用Code Collaborator在另一个文件中引用一行?

在文件foo.cc的聊天框中,我想引用文件bar.cc中的特定行.

例如,我已经bar.cc:line 12在我的代码协作聊天框中写了

在这种情况下,代码协作只识别并允许跳转bar.cc,但不允许跳转到行.是否可以在bar.cc中写入对第12行的引用,以便当设计人员在聊天框中单击它时,它们会立即跳转到文件中的那一行?

agile code-collaborator

7
推荐指数
1
解决办法
946
查看次数

在Excel中后期绑定VBIDE.VBE

是否可以在Excel中后期绑定VBIDE.VBE对象?例如:

Dim VBAEditor As VBIDE.VBE
Run Code Online (Sandbox Code Playgroud)

而是变成类似于此的东西(后期绑定):

Dim VBAEditor As Object: set VBAEditor = CreateObject ("VBIDE.VBE")
Run Code Online (Sandbox Code Playgroud)

我的目标是避免必须手动选中"Microsoft Visual Basic for Applications Extensibility 5.3"参考的复选框.

使用下面的反馈,我能够以编程方式动态添加"Microsoft Visual Basic for Applications Extensibility 5.3"参考.解决方案如下:

Sub mainFunction()

    Call AddLib("VBIDE", "{0002E157-0000-0000-C000-000000000046}", 5, 3)

    ' Bunch of working code goes here

End Sub

'******************************************************************************
'AddLib: Adds a library reference to this script programmatically, so that
'        libraries do not need to be added manually.
'******************************************************************************
Private Function AddLib(libName As String, guid As String, major As Long, minor …
Run Code Online (Sandbox Code Playgroud)

excel vba excel-2007 excel-vba

7
推荐指数
1
解决办法
3910
查看次数

从不同位置执行 Expect 脚本

我正在尝试从两个不同的位置运行我的 Expect 脚本,它将与以下引用的 Expect 可执行文件一起使用:

  1. 我的 linux 主目录 ( #!/usr/bin/expect)
  2. 另一台服务器上的 clearcase 视图 ( #!/clearlib/vobs/otherdir/bin/expect)

问题是我无法在两个地方运行脚本,除非我将 Expect 可执行文件位置的引用更改为文件的第一行。

如何获取相应目录的 Expect 可执行文件的正确实例?

linux shell automation clearcase expect

5
推荐指数
1
解决办法
2085
查看次数

Git清洁过滤器打破空文件

我从Git Attributes文档中设置了以下过滤器:

git config filter.dater.smudge expand_date
git config filter.dater.clean 'perl -pe s/\\\$Date[^\\\$]*\\\$/\\\$Date\\\$/"'
Run Code Online (Sandbox Code Playgroud)

现在我运行以下命令:

touch nfile.txt
git add --all
Run Code Online (Sandbox Code Playgroud)

并得到以下错误:

error: copy-fd: read returned Bad file descriptor
error: cannot feed the input to external filter perl -pe "s/\\\$DATE[^\\\$]*\\\$/\\\$DATE\\\$/"
error: external filter perl -pe "s/\\\$DATE[^\\\$]*\\\$/\\\$DATE\\\$/" failed
Run Code Online (Sandbox Code Playgroud)

该错误似乎与我的脚本无关,因为如果我运行此错误,则不会出现错误:

cat nfile.txt | perl -pe "s/\\\$DATE[^\\\$]*\\\$/\\\$DATE\\\$/"
Run Code Online (Sandbox Code Playgroud)

此外,这个旧线程提到错误可能是由于"从apply_filter调用的代码中的copy_fd",并建议修补filter_buffer_or_fdgit核心文件convert.c中的函数.就个人而言,如果我可以避免修补核心Git代码,我会非常高兴.

我需要清理错误消息,因为我不希望用户在提交的暂存阶段看到这种丑陋的输出.有办法避免这种情况吗?或者正确处理这种情况的方法?

如果之前已经回答过,我道歉.我在交换或互联网上找不到相同的文章.

linux git

5
推荐指数
1
解决办法
284
查看次数

Google Eclipse 插件不见了?

今天早上,我试图让一名合作学生在旧版本的 Google App Engine for Eclipse 插件上运行。

以下网站和所有相关链接似乎已从地球上消失:

https://developers.google.com/eclipse/

这只是暂时下降吗?是否可以获得旧版本的插件?

google-app-engine google-eclipse-plugin

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

在GWT中为ClientBundle放置资源的位置?

我希望将静态资源保留在类树之外,但是将它们保存在src/main/resources树中.虽然应该使用与java类相同的路径找到它们,例如:

package my.path.to;

class ResourceBundle extends ClientBundle {
  @Source("src/main/resources/my/path/to/ResourceBundle/myIcon.png")
  ImageResource myIcon();
}
Run Code Online (Sandbox Code Playgroud)

我是否总是要写出@source引用它们的路径?或者我可以以某种方式告诉它ClientBundle只是查看与java类相同的目录,但只是在资源?

java gwt

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