这段代码
Sheets(1).Activate
Sheets(2).Range("A1").Select
Run Code Online (Sandbox Code Playgroud)
将在VBA中失败,因为你只能Select在一个对象上使用它Active.我明白这是事实.
Excel数据模型的哪个元素会导致这种情况?我认为Activate在使用之前,用户/编码器有一个隐含的意图到任何对象Select- 我不明白为什么VBA不会做出这个假设,并且,我假设存在这种区别存在的原因.
命令行终端明星与一些文件夹,如projectRoot/one subproject每次而不是projectRoot.我个人没有更改任何设置.
有没有人知道如何设置Idea以项目根启动终端而不是cd ..每次都键入?
我创建了两个docker网络:
docker network create --driver=bridge --subnet=172.1.0.0/16 --ip-range=172.1.5.0/24 --gateway=172.1.5.254 br1
docker network create --driver=bridge --subnet=172.2.0.0/16 --ip-range=172.2.5.0/24 --gateway=172.2.5.254 br2
Run Code Online (Sandbox Code Playgroud)
我这样做是为了促进该网络中更容易的容器交互(我不需要为该子网内的容器公开端口).
然而,现在,我有兴趣在Docker中的两个子网之间建立一些服务(可能A为172.1.0.0,B为172.2.0.0).
如何公开端口以便它们可以在两个子网之间相互连接?在创建docker子网之前,我可以-p 8000:8000在运行docker镜像时使用它来暴露端口,然后访问所需的端口.
我使用的是docker版本1.10.1和docker-machine.
该文件表明这是可能的,但没有给出实际的例子:
在用户定义的桥接网络中,不支持链接.您可以在此网络中的容器上公开和发布容器端口.如果要将桥接网络的一部分用于外部网络,这将非常有用.
我正在使用 Python 来启动 docker 实例。
我如何识别它们是否正在运行?我可以很容易地docker ps从终端使用,如:
docker ps | grep myimagename
Run Code Online (Sandbox Code Playgroud)
如果这返回任何内容,则图像正在运行。如果它返回一个空字符串,则图像没有运行。
但是,我无法理解如何subprocess.Popen使用它 - 它需要一个参数列表,例如:
p = subprocess.Popen(['docker', 'ps', '|', 'grep', 'myimagename'], stdout=subprocess.PIPE)
print p.stdout
Run Code Online (Sandbox Code Playgroud)
不起作用,因为它试图采用“docker ps”并使其成为“docker”和“ps”命令(docker不支持)。
似乎我也不能给它完整的命令,因为Popen试图将整个第一个参数作为可执行文件运行,所以这失败了:
p = subprocess.Popen('docker ps | grep myimagename', stdout=subprocess.PIPE)
print p.stdout
Run Code Online (Sandbox Code Playgroud)
有没有办法真正docker ps从 Python运行?我不知道尝试使用subprocess是不是最好的路线。然而,这是我用来运行 docker 容器的方法,所以它似乎是正确的路径。
我有一种情况:
-v /my/local/path/tmp/mycode:/mycode
基本上我希望能够编辑已安装卷中的文件,但不保留这些更改。
我当前的工作流程是使用 dockerfile 创建一个虚拟容器:
ADD . /mycode
Run Code Online (Sandbox Code Playgroud)
然后执行该容器。
然而,随着存储库的增长,执行此步骤所需的时间越来越长,因为我能想到的唯一方法是制作 ~/tmp/mycode 的完整副本,以便能够操作容器中的文件。
我还考虑过安装目录并将其复制到容器内并提交该容器,但这有同样的问题。
有没有办法运行 docker 容器来允许文件编辑,而无需将它们保存在主机上而不复制整个目录?
我使用的是最新的 docker for mac,当前版本为 17.03.1-ce-mac5 (16048)。
我有一个包含几个.txt文件的目录.让我们说吧
hi.txt
hello.txt
hello_test.txt
test.txt
Run Code Online (Sandbox Code Playgroud)
在VBA中使用文件对话框,如何过滤以在下拉列表中仅显示"*test.txt"匹配文件(即最后两个)?或者我只能使用*.过滤器?
以下似乎应该有效,但不是:
Sub TestIt()
Dim test As Variant 'silly vba for not having a return type..
test = Application.GetOpenFilename(FileFilter:="test (*test.txt), *test.txt")
End Sub
Run Code Online (Sandbox Code Playgroud)
编辑:澄清如果不清楚:我想过滤" test.txt"而不是" .txt"文件,所以我只能从选择器中的hello_test.txt和test.txt中选择.
我正在寻找一种更好的方法来禁止在 Excel 工作簿中触发 ActiveX 事件(尽管这适用于所有带有 ActiveX 对象的 Office 应用程序)。
希望类似于Application.EnableEvents = false,尽管这不适用于 ActiveX。
在下面的示例中,使用全局布尔值是微不足道的,但是我的 ActiveX 对象有很多事件处理程序,并且对于我可以普遍应用的临时禁用 ActiveX 事件的东西来说会非常容易。我真的不想为这些方法中的每一个添加 if/exit 子语句。
为了演示这个问题,在工作表中创建一个 ActiveX 组合框并将以下内容添加到该工作表模块
Public initializingContent As Boolean
Private Sub intializeAllActiveXContent()
'this doesn't apply to activeX events :'(
Application.EnableEvents = False
'this could work but is not really elegant
'change this to false to show my problem in
'the intermediate window (called not once but twice)
initializingContent = True
ComboBoxTest.Clear
ComboBoxTest.AddItem ("item1")
ComboBoxTest.AddItem ("item2")
ComboBoxTest.AddItem ("item3")
'select the top …Run Code Online (Sandbox Code Playgroud) 我有一个带有多个DLookup的Access splitform.表单上总共有大约10个DLookup,并且在Splitform视图中一次显示大约25-50条记录.
Access前端链接到SQL表.
当数据表视图中显示DLookup值时,查看信息变得非常慢,因为频繁重新计算(每次数据集中的任何内容更改时,Access似乎都会重新计算整个Splitform数据表的所有DLookup).当通过VPN连接时,这非常明显且无法接受.
我决定调查并编写以下内容以确定事情为何如此缓慢.我还想检查由于某种原因DLookup是否比SQL查询慢.
sub testLotsofDlookups()
Dim count As Integer
Dim startTime As Date
Dim endTime As Date
Dim numbTries As Integer
Dim t As String
numbTries = 100
startTime = Now
count = 0
Dim dbs As DAO.database
Dim rsSQL As DAO.Recordset
Dim strSQL As String
Set dbs = CurrentDb
'Open a snapshot-type Recordset based on an SQL statement
strSQL = "Select FullName from ToolDesigners Where ToolDesignersID=4;"
startTime = Now
For count = …Run Code Online (Sandbox Code Playgroud) 我有兴趣在/MP我使用qmake创建的每个Visual Studio项目中使用命令行选项(因为这极大地加快了编译速度) - 请参阅此处以获取说明.
不幸的是,我不知道如何在Qt .pro文件中设置它 - 或者甚至可能.
是否可以设置命令行标志(如在链接的问题中),以便qmake识别并添加到Visual Studio项目?
在 VB/VBA(或者我猜是本机 VBA 调用)中使用FileSystemObject我怎样才能:
所以,像这样:
mFSO.CopyAndRename(targetFolder, copyDirectory, copyFolderName)
Run Code Online (Sandbox Code Playgroud)
我基本上已经自己完成了此操作,但我更喜欢更干净的方法调用,例如上面的(和方法CopyFolder)。这似乎有很多代码和很多潜在的故障点......
'
''requires reference to Microsoft Scripting Runtime
Public Function CopyDirectory(ByVal p_copyDirectory As String, p_targetDirectory As String, Optional p_newName As String = "") As Boolean
CopyDirectory = False
Dim m_fso
Set m_fso = New FileSystemObject
Dim mFolder, mNewFolder
If Not Me.DoesPathExist(p_copyDirectory) Then
Exit Function
Else
On Error GoTo errHandler
Set mFolder = m_fso.GetFolder(p_copyDirectory)
mFolder.Copy p_targetDirectory, False
'rename if a "rename" arg is passed
If p_newName <> "" …Run Code Online (Sandbox Code Playgroud)