小编spi*_*tor的帖子

VB.NET调试错误:"当前项目设置指定项目将被调试......"

我似乎无意中将VB.NET 2012项目转换为"在线发布"类型.我正在探索IDE并启动了发布向导,但我没有做任何事情就取消了它.该错误似乎与命令行参数的使用有关,我在项目属性中定义了这些参数.

如何从"在线发布"中将项目恢复为"正常模式"...?

每当调试开始时(F5)都会发生错误,如下所示:

当前项目设置指定将使用特定安全权限调试项目.在此模式下,命令行参数不会传递给可执行文件.你想继续调试吗?是/否.

在此输入图像描述

vb.net

19
推荐指数
1
解决办法
4489
查看次数

在Excel VBA中,如何测试Excel.Range对象变量是否丢失其引用而不会引发运行时错误424 ..?

在Excel VBA中,如果变量是Excel.Range,并且删除了它引用的范围,则会丢失其引用.任何访问该变量的尝试都会导致Runtime Error 424: object required.

Dim rng As Range
Set rng = Sheet1Range("A1")
Sheet1.Rows(1).Delete       'Range has been deleted.
Debug.Print rng.Address()   'Any access attempt now raises runtime error 424.
Run Code Online (Sandbox Code Playgroud)

有没有办法测试这种"丢失参考"状态没有错误处理程序..?

测试Nothing,Vartype()和Typename()都没有用,因为变量仍然是一个Range.我完全阅读了对象浏览器中的所有Excel.Application,但一无所获.也许有一些我忽略的东西......?比如史前版本的Excel中那些奇怪的残余函数之一,比如ExecuteExcel4Macro()..?

我在谷歌搜索了这个问题的答案,但没有找到任何帮助.

编辑:

有些人问我为什么要避免错误处理程序.这是我正常的编程理念,原因有两个:

  • 我确实认识到有时错误处理程序是最快捷的方式,或者唯一的方法.但这不是最优雅的方式.看起来好吧,对我来说很糟糕.这就像白色洗涤栅栏和绘制我的猫的肖像之间的区别.= - )
  • 我避免错误处理程序的另一个原因是教育.很多时候,在寻找替代方案时,我会发现以前从未知道的属性,程序,对象甚至整个库.在这样做的过程中,我找到了更多的装甲来防御我的代码.

excel vba

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

在VB6/VBA项目引用中,Array(),LBound()和UBound()来自......?

在VB6/VBA项目引用中,Array(),LBound()和UBound()来自......?当我输入代码时,它们不会出现在自动完成列表(ctrl + space)中,它们不会自动完成,并且必须在文本编辑器识别它们之前完全输入它们.只有在键入左括号时,ToolTipText才会弹出命令语法.此外,它们不会出现在对象资源管理器中.

这里可能有一个基本的概念,我不知道.它让我想知道,其他命令/声明/关键字以同样的方式被隐藏了吗?某个地方有名单吗?我用谷歌搜索信息,但没有找到任何东西,可能是因为我不知道我在寻找什么,并使用错误的搜索条件.

我问这些问题是因为我习惯为许多VB6内置函数加上前缀:VBA.Left(),VBA.Len,VBA.Instr()等等.但我无法弄清楚与Array(),LBound()和UBound()一起使用的参考前缀,或者它们对VB6来说是如此基本,以至于它们没有.

我做这个前缀是因为多年前我正在研究一个大型项目,并且我试图在不同的参考库中使用相同名称的函数.我是一个新手,我花了一段时间才弄明白,它造成了巨大的问题,因为这些功能并没有像我认为的那样工作.就在那之后我发现了这个前缀习惯.这种方式更简单,并始终确保使用预期的功能.

vb6 vba

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

在 DBeaver 中,如何从两个不同的连接运行 SQL 联合查询..?

我们最近将大型 DB2 数据库迁移到新服务器。在迁移过程中,它被大幅削减,例如 10 年的数据被削减到 3 年等等。但现在我发现我需要旧服务器上的某些数据,直到纳税季节结束。

如何UNION在 DBeaver 中运行查询从两个不同的连接提取数据..?FROM和关键字中的表标识符的正确语法是什么JOIN

我使用 DBeaver 进行常规 SQL 工作,但无法确定如何UNION跨两个不同的连接进行查询。不过,我也使用 Microsoft Access,并且可以通过两个传递到本机 Microsoft Access 联合查询的传递查询轻松完成此操作。

但是如何在 DBeaver 中做到这一点呢?我不明白如何同时使用两个连接。

例如,这是我的联系:

在此输入图像描述

我需要这样的东西......

SELECT      *
FROM        ASP7.F_CERTOB.LDHIST 
UNION
SELECT      *
FROM        OLD.VIPDTAB.LDHIST 
Run Code Online (Sandbox Code Playgroud)

...但是我收到以下错误,对此我说“别开玩笑!这就是我想要的!”,哈哈...=-)

SQL Error [56023]: [SQL0512] Statement references objects in multiple databases.
Run Code Online (Sandbox Code Playgroud)

如何才能做到这一点..?

dbeaver

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

如何编辑,索引和/或打印VB6源代码,以及页面上的每个子/函数..?

如何在自己的页面上为每个子或函数编目,索引和/或打印VB6源代码..?如果可能的话,我想使用免费或包含Visual Studio插件这样做,但我并不反对自己写一些东西.我熟悉"Microsoft Office Visual Basic for Applications Extensibility",似乎VB6有一个类似的模块,这可能允许我通过代码模块集合简单地"For Each"并将打印机扔到打印机上时间.它可能需要10-15行代码.

我的首要任务是打印,最好是在自己的页面上使用每个子/功能,但是使用IDE的常规打印功能,所有代码在一个长打印输出中一起运行.接下来,我想在每个VBP中创建每个子,函数,变量和常量的名称的索引/ toc.我们有Visual Studio 6.0企业版,但似乎没有任何东西可以用来做这些事情.

你可能会笑,并问,"为什么VB6 .. ?? LOL !!".这是因为我的任务是升级和更改运行工厂的大型软件系统的VB6源代码.它位于一个与外部世界没有联系的孤立网络上,它已经运行了14年,但现在他们想要开始升级一些东西.该系统由许多VBP文件组成,每个文件都有许多模块和表单.

编辑:我确实尝试谷歌搜索的答案,但事实证明这是不可能的.我得到的只是关于用VB6编写的应用程序打印的编码样本,而不是从IDE打印源代码.

vb6 visual-studio visual-studio-6 vbide

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

VBA:当组合框中选定的值发生变化时如何触发事件

我是 VBA 新手,希望在组合框(用户窗体内)中的选择发生更改时触发一个简单的更改事件。

我尝试了这两种Private Sub myCombo_AfterUpdate()方法,Private Sub myCombo_Change()但在这两种情况下,当我在组合框中选择不同的值时,都不会发生任何情况。

这是组合框的错误方法吗?

我的子程序如下启动,因为我想将下拉列表中当前选定的项目与表中的值进行比较:

Private Sub myCombo_AfterUpdate()
    If Me.myCombo.Value = Worksheets(8).Range("A4") Then
    'do stuff
End Sub
Run Code Online (Sandbox Code Playgroud)

非常感谢蒂姆对此提供的任何帮助。

excel vba combobox onchange

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

如何在VB6 Addin中使用VBIDE以编程方式打印源代码..?

如何以编程方式在VB6 Addin中打印源代码..?我在对象浏览器中找不到VBIDE的打印或预览方法.

我在Google上搜索过高低,而且在VBIDE代码模块打印方面缺乏信息.我为PrettyPrint获得了很多热门,但就是这样.缺乏是如此之大,以至于我想知道是否存在一些我完全缺失的基本概念.

我害怕Herb在/sf/answers/2872394801/中提到的O'Reilly书的副本,它没有提到源代码的打印.我能看到的唯一方法是将代码导出到文本文件,并通过与VBIDE无关的常用方法打印它们.

我还在http://www.cpearson.com/excel/vbe.aspx上查看了Chip Pearson的VBE指南,它几乎与VBIDE相同,甚至没有打印代码的线索,除了我提到的想法.保存到文本文件然后打印.

**理想情况下,我想使用现有的VB6文件>打印对话框,并添加一个额外的复选框.我意识到在现有对话框中添加控件是另一个主题,我不反对创建我自己的打印对话框版本.

vb6 vbide

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

在 VBA 类模块中,私有实例变量可以显式限定为同一类中的公共枚举吗?

在VBA自定义类模块(以及扩展VB6?)中,如果有一个私有实例变量定义为同一类中的公共枚举,它是否应该被限定......?如果是这样,如何..?

我经常有相同类型的项目参考。例如,Excel 和 Word 都有一个Range对象。因此,在声明变量时,我总是尽可能具体,例如Excel.Rangeor Word.Range,而不仅仅是Dim R As Range

但是枚举呢?如何具体说明这些..?我尝试将变量限定为枚举,但总是收到错误。我尝试将枚举定义移动到另一个自定义类,但这没有帮助。我不经常为 VBA 创建类,所以我可能用错了树。

如果我使用Me.关键字限定,我会收到错误:

"Compile error: Expected New or type name."
Run Code Online (Sandbox Code Playgroud)

如果我使用自定义类名,我会收到错误:

"Compile error: User-defined type not defined"
Run Code Online (Sandbox Code Playgroud)

这是一个完整的示例:

'Custom class module.
Option Explicit

Public Enum ImageAspect
    ImageAspectHorizontal
    ImageAspectVertical
End Enum

' Example 1:
' Qualified to use built-in Excel enumeration. This works.
Private logoAspect1 As Excel.XlOrientation 

' Example 2:
' Uses the enum defined in this class. This works, but...
' …
Run Code Online (Sandbox Code Playgroud)

excel vba

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

我可以与CVErr()一起使用哪个错误号来指示Access VBA函数不会返回任何值?

我可以与CVErr()一起使用哪个错误号来指示Access VBA函数不会返回任何值?我拉空白。CVErr(5)可以工作,但是我希望有一些不太通用的东西。744(“找不到搜索文字”)接近(-ish),但仍然没有雪茄。

我正在创建一个特殊的查询功能以在访问报告中使用。如果该函数不返回任何值,我希望它返回一个ERROR#值。Chip Pearson对此的讨论是完美的,但是它是针对Excel的,必须对Access进行一些更改。

我已经在FMS上使用各种关键字(例如“零”,“未找到”,“太少”等)搜索了错误列表。列表中有成千上万个错误,因此无需任何帮助就可以将其减少实际阅读整个列表将不胜感激。

例:

   Function MyLookup(param1) as Variant
        '..............
        '...do stuff...
        '..............
        If SomethingBad = True Then
            MyLookup = VBA.CVErr(N) 'What here for N?
            Exit Function
        Endif
   End Function
Run Code Online (Sandbox Code Playgroud)

vba excel-vba access-vba

4
推荐指数
1
解决办法
155
查看次数

在 Access VBA 中打开 RecordSet 时,如果类型是 dbOpenSnapshot,是否会使选项 dbReadOnly 变得多余?

在 Access VBA 中,将记录集作为快照打开时,是否会使只读选项变得多余?起初这似乎是正确的,因为快照本质上已经是只读的,但似乎总是有一些警告。

例子:

Dim acc      as Access.Application
Dim db       as DAO.Database
Dim rs       as DAO.Recordset
Dim sqltext  as String

sqltext = "SELECT * FROM SOMESOURCE"

Set rs = db.OpenRecordset(sqltext, dbOpenSnapshot, dbReadOnly)

'Because the type is dbOpenSnapshot, does dbReadOnly become redundant?
Run Code Online (Sandbox Code Playgroud)

ms-access vba dao

4
推荐指数
1
解决办法
3253
查看次数

确定 VBA 2007 中对象变量的库名称..?

如何在 VBA 2007 中确定对象变量的完全限定类和成员名称?例如,Excel.Range而不仅仅是Range......就像它在代码中出现的那样?

Excel 和 Word 都有一个Range对象,但它们是截然不同的类。在下面的示例中, aRange被传递给函数。该函数如何确定它来自哪个类......?

该示例的结果生成“Microsoft Excel.Range”。虽然很接近,但不一样。但是Parent.Name和类名是两个不同的属性,在其他软件中可能是完全不同的文本字符串,没有共性。

那么......如何才能得到Excel.Range而不是Microsoft Excel.Range..?

'Note: Project has references to both Excel and Word.
Public Sub Demo()
    Dim r As Excel.range
    Dim fulltype As String
    Set r = ActiveCell
    fulltype = WhatAmI(r)
    Debug.Print fulltype
    Select Case fulltype
        Case "Excel.Range"
            'Do stuff.
        Case "Word.Range"
            'Do other stuff.
    End Select
End Sub

Private Function WhatAmI(ByRef X As Object) As String
    Dim typ …
Run Code Online (Sandbox Code Playgroud)

excel ms-access vba ms-word

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

意外关闭后如何恢复 SSMS (Microsoft SQL Server Management Studio) 中丢失的 SQL 自动恢复文件

我的 SQL Server Management Studio (SSMS) 意外关闭。许多 SQL 文件已打开。当 SSMS 重新启动时,它确实重新打开了一些自动恢复文件,但不是全部文件,尤其是我正在处理的文件,并且可能会丢失几个小时的工作。

丢失的文件可以恢复吗?

这是一个自我回答的操作问题。见下文。

注意:这适用于SSMS,但也可能适用于SSIS(Microsoft SQL Server Integration Services)。

ssis ssms visual-studio

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