我试图testing一个GoDaddy SQL Server数据库的连接。 我得到一个“无效的连接string属性”。 这个脚本有什么问题? Dim cnn As ADODB.Connection Dim canConnect As Boolean Public Sub TestConnection() Set cnn = New ADODB.Connection cnn.Open "Provider=sqloledb;Data Source=GoDaddyServer.com;Initial Catalog=dBase1;UserID=userID; Password='password';" If cnn.State = adStateOpen Then canConnect = True cnn.Close End If MsgBox canConnect End Sub
我有一个使用macros保存文件的Excel模板,以便用户维护标准化的文件名格式。 我使用Excel 2003创build了代码。代码如下: Sub SaveBook() Dim sFile As String sFile = "ConsolidatedDemand" & "_" & Format(Now(), "yyyy.mm.dd") & ".xls" ActiveWorkbook.SaveAs Filename:= "\\file location\" & sFile End Sub 我有一个使用Excel 2007的用户。当他们尝试运行macros时,他们收到一个错误:“以下function不能保存在无macros工作簿:VB项目。要保存具有这些function的文件,请单击否,然后在文件types列表中select启用macros的文件types要继续保存为无macros的工作簿,请单击“是” 我尝试在第二行代码中将文件扩展名修改为“.xlsm”,但是却得到相同的错误信息。 有关如何修改此代码的其他任何想法,以便Excel 2007用户可以使用该代码?
我从Excel复制单元格到一个开放的文档。 我这样做的方式只是将单元格的内容复制到剪贴板中,并在word文档中replace特定的KEYWORD,如下所示: 如果单元格A1 = "some word"我也需要replace单词文档中的string“ QUERYA1 ” 我正在这样做: Sub NoFormatPaste() wdFind.Replacement.Text = "" wdFind.Forward = True wdFind.Wrap = wdFindContinue wdFind.Execute If IsEmpty(Selection.Text) And Len(Selection.Text) = 0 Then ClipEmpty.PutInClipboard appWd.Selection.PasteSpecial DataType:=wdPasteText End Else appWd.Selection.PasteSpecial DataType:=wdPasteText End If CutCopyMode = False End Sub 当这个子运行时,它会在每个字段上工作,除非它在单元格为空的时候给出一个错误。 我有这个公式在单元格中: =+IF(K10="XXX","",K10) 当这个公式产生任何东西或空白,我运行我的macros,我得到一个错误,在这个贴上这个词。 我得到一个错误,称为4168 command failed/command execution在这一行: appWd.Selection.PasteSpecial DataType:=wdPasteText 这是我的完整代码: Dim appWd […]
我在Pth列的第二行input了这些公式: =(COUNTIF(A$1:A1,A2)=0)+(COUNTIF(B$1:B1,B2)=0)+(COUNTIF(F$1:F1,F2)=0) 当我把它拖到第P列的第三行时,它就是这样的: =(COUNTIF(A$1:A2,A3)=0)+(COUNTIF(B$1:B2,B3)=0)+(COUNTIF(F$1:F2,F3)=0) 这是我手动做的。 我如何使用VBA? 我尝试了下面的方法。 cells(Count,"M").formula= "=(COUNTIF(A$1:A1,A2)=0)+(COUNTIF(B$1:B1,B2)=0)+(COUNTIF(F$1:F1,F2)=0)" 但它不工作。 这不是从改变 "=(COUNTIF(A$1:A1,A2)=0)+(COUNTIF(B$1:B1,B2)=0)+(COUNTIF(F$1:F1,F2)=0)" 至 "=(COUNTIF(A$1:A2,A3)=0)+(COUNTIF(B$1:B2,B3)=0)+(COUNTIF(F$1:F2,F3)=0)" 如果公式不断增加,那么如何将公式插入单元格?
我怎样才能从Excel中启动.bat文件? 例如通过一个事件或button? 是否有可能build立一个.bat文件到Excel? 例如,我从Excel生成可启动的.bat文件,用户从服务器下载我的Excel文件,然后这个Excel文件可以启动.bat文件?
尽pipe我一直在使用VBA for Excel很长一段时间,但有一个问题是我自己无法解决的。 我已经在下面描述了,希望得到一些帮助或build议。 我正在使用Excel 2007和Windows XP,全部使用最新的补丁更新。 我经常使用下面的代码从另一个工作簿中获取数据: Set conn = New ADODB.Connection conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=g:\source.xls;Extended Properties=Excel 8.0;" Sql = "SELECT Field1, Field2 FROM [Sheet1$]" Set rst = New ADODB.Recordset rst.Open Sql, conn, adOpenForwardOnly Worksheets("Results").Range("A2").CopyFromRecordset rst rst.Close Set rst = Nothing conn.Close Set conn = Nothing 就像可以 – 只需连接到文件并从中获取一些数据。 因为位于通用networking驱动器(g:\ source.xls)中的源文件在另一台计算机上未打开,所以它工作得很好。 当另一台计算机上的某个用户打开该文件并尝试执行以下代码时,我注意到一件事情,我想摆脱: 我的计算机上打开源Excel文件(在只读模式)并且在closures该文件的连接之后它不closures 。 […]
我必须从列中计算不同值的数量,并用不同的值打印,并在另一个表格中计数。 我正在处理这段代码,但由于某种原因,它没有返回任何结果。 谁能告诉我,我错过了这一块! Dim rngData As Range Dim rngCell As Range Dim colWords As Collection Dim vntWord As Variant Dim Sh As Worksheet Dim Sh1 As Worksheet Dim Sh2 As Worksheet Dim Sh3 As Worksheet On Error Resume Next Set Sh1 = Worksheets("A") Set Sh2 = Worksheets("B") Set Sh3 = Worksheets("C") Sh1.Range("A2:B650000").Delete Set Sh = […]
问题: 我有一个包含值,公式和ActiveXbutton的工作表。 ActiveXbutton用于附加一些数据,并将活动工作表中的所有值/公式从另一个工作簿中复制/粘贴到另一个工作表中。 现在它工作正常,只有一个例外。 当它将复制的范围粘贴到新的工作簿/工作表中时,它也会粘贴ActiveXbutton及其各自的代码。 我想知道是否有一种方法来select所有的东西,less一些ActiveXbutton,将它添加到剪贴板,然后照常粘贴。 提前致谢。
我的主要目标是复制自动筛选器的可见单元格,然后将可见单元格的尺寸复制到新工作表。 我正在使用这个代码: Sheets(1).AutoFilterMode = False Sheets(1).Range("A1:A1").AutoFilter Field:=columnaNumeroIntervalo, criteria1:=CDec(paramCantidadCriterio) Sheets(1).Range("A1:A1").AutoFilter Field:=columnaNumeroIntervaloUnidades, Criteria1:=paramUnidadesCriterio MsgBox AutoFilter.Range.SpecialCells(xlCellTypeVisible)(2, 11).Value 用最后一行我想检查单元格的值。 如果我使用Cells(2,11)而不是SpecialCells我可以看到单元格中的所有单元格都是可见的,不可见的。 所以我想用SpecialCells 。 如果我使用特殊的单元格,我得到以下错误: error '-2147417848 (80010108) in runtime. Automatization error. 对于执行的types来说,它似乎进入一个循环,并最终给出这个错误。 也许SpecialCells修改自动filter,然后在每次修改再次执行自动filter?
参考 我想用下面的代码用VBA来更改ActiveX命令button的名称属性: Set shp = ActiveSheet.Shapes(Selection.Name) With shp.OLEFormat.Object .Object.Caption = "Node" & Str(NumNodes) .Name = "Node" & Str(NumNodes) End With 我可以更改标题名称,但名称属性不能用上面的代码进行更改。 我需要find一种方法来连接string与一个int(NumNodes)的名称属性。 UPDATE 这是复制命令button并将其粘贴到特定单元格位置的完整子例程。 诸如名称和标题的属性也在创buildbutton时被改变。 Public Sub Node_Button_Duplication() ' 'Comments: Copies and pastes Node 1's button to the appropriate column Dim shp As Shape ' Copy Node 1 button and paste in appropriate location ActiveSheet.Shapes("CommandButton1").Select […]