我是SQL Server的新手,所以这可能很容易解决.在SQL Server 2008 R2中,我刚刚在现有表中导入了一个新数据表和/或重命名的字段(无论哪种方式都会发生).当我开始编写一些SQL时,intellisense不会识别新的字段名称并开始强调所有内容.
我发现的唯一修复是关闭并重新打开SQL Server,但我确信那里有一个更简单的解决方案.建议好吗?
(这不是一个严重的问题,只是一个小小的烦恼).
我正在Access中编写一个VBA脚本,用于创建和自动填充几十封电子邮件.到目前为止,它一直是流畅的编码,但我是Outlook的新手.创建mailitem对象后,如何将默认签名添加到电子邮件中?
这将是创建新电子邮件时自动添加的默认签名.
理想情况下,我想使用ObjMail.GetDefaultSignature,但我找不到类似的东西.
目前,我正在使用下面的功能(在互联网上的其他地方找到)并引用htm文件的确切路径和文件名.但是这将由几个人使用,他们的默认htm签名文件可能有不同的名称.所以这可行,但它并不理想:
Function GetBoiler(ByVal sFile As String) As String
'Dick Kusleika
Dim fso As Object
Dim ts As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Set ts = fso.GetFile(sFile).OpenAsTextStream(1, -2)
GetBoiler = ts.readall
ts.Close
End Function
Run Code Online (Sandbox Code Playgroud)
(称为getboiler(SigString = "C:\Users\" & Environ("username") & "\AppData\Roaming\Microsoft\Signatures\Mysig.txt"))
感谢JP(参见评论),我意识到默认签名首先出现,但是当我使用HTMLBody向电子邮件添加表格时它会消失.所以我想我现在的问题是:如何显示默认签名并仍显示html表?
Sub X()
Dim OlApp As Outlook.Application
Dim ObjMail As Outlook.MailItem
Set OlApp = Outlook.Application
Set ObjMail = OlApp.CreateItem(olMailItem)
ObjMail.BodyFormat = olFormatHTML
ObjMail.Subject = "Subject goes here"
ObjMail.Recipients.Add …Run Code Online (Sandbox Code Playgroud) 在另一个与编程相关的网站上,我在某人的签名中看到了这一行.这不是我第一次见到这种情绪,虽然这是最严厉的:
"在VB或其任何变种中工作的人不是程序员,他们是马戏团的黑猩猩把粪便投入IDE ......"
VBA是我的面包和黄油,我可以用它自动化很多东西.是的,我知道它缺乏润色和一些功能,但为什么这么多的消极性呢?另一方面,VB不具备其他语言的含义?
我正在尝试导入.fmt格式定义的文本文件.这个文本文件不是以逗号分隔,而是我称之为列分隔(即前8个字符是第一个字段,接下来的3个字符是第二个字符,等等).当我运行下面的查询时,我得到一个"操作系统错误代码(null)"消息,这是奇怪的,因为我使用SQL Server 2008r2与Vista.
请向我解释这个错误信息的含义以及如何解决这个问题?我用Google搜索并在其他论坛上发现了类似的问题,但它们从未得到过真正的回答.
这是我的查询:
BULK INSERT LoadTable FROM '\\Dev2\Queries\Test.txt'
WITH (FIRSTROW = 2,
FORMATFILE = '\\Dev2\fmt\Test.fmt',
KEEPNULLS)
Run Code Online (Sandbox Code Playgroud)
这是我得到的错误:
Cannot bulk load because the file "\\Dev2\fmt\test.fmt" could not be read.
Operating system error code (null).
Run Code Online (Sandbox Code Playgroud)
以下是Test.fmt包含的内容:
9.0
7
1 SQLCHAR 0 8 "" 1 Record_Control_Data SQL_Latin1_General_CP1_CI_AS
2 SQLCHAR 0 3 "" 2 Filler ""
3 SQLCHAR 0 1 "" 3 Member_Code SQL_Latin1_General_CP1_CI_AS
4 SQLCHAR 0 2 "" 4 Member_Sequence_Number SQL_Latin1_General_CP1_CI_AS
5 SQLCHAR 0 9 "" 5 Participant_SSN SQL_Latin1_General_CP1_CI_AS
6 …Run Code Online (Sandbox Code Playgroud) 我们有一个用Access编写的自定义程序,其中包含奇怪的崩溃.我们添加了错误处理,记录并通过电子邮件发送在我们自己的代码中发生的任何崩溃,这使我们能够修复我们生成的大多数错误,但有时崩溃发生在我们的代码之外.
我们发现在2013年出现新版本的一个示例 - 我们有一个在某个字段中编辑数据后会崩溃的表单 - 新条目很好但创建记录后的任何编辑都会导致完全崩溃关闭MS Access.我们花时间并最终追踪到我们的一些代码迫使表单移动到下一个记录,这个字段是行中的最后一个字段,因此Access本身也试图移动到下一个记录.这是自2007年以来一直在系统中,但在2013年开始导致程序关闭.
有没有办法陷阱和诊断MS访问内的程序级崩溃?
Windows事件查看器仅显示以下内容:
错误的应用程序名称:MSACCESS.EXE,版本:15.0.4454.1501,时间戳:0x50a35ef4错误模块名称:MSACCESS.EXE,版本:15.0.4454.1501,时间戳:0x50a35ef4异常代码:0000005故障偏移:0x00116452出错进程ID:0x1398断裂作用应用程序启动时间:0x01ce6e665043d8be错误应用程序路径:C:\ Program Files文件(x86)的\的Microsoft Office\Office15\MSACCESS.EXE错误模块路径:C:\ Program Files文件(x86)的\的Microsoft Office\Office15\MSACCESS.EXE报告编号: 6cfcb0eb-da62-11e2-8966-842b2b86f028
如何按部门分组的#客户(包括关系)对销售人员进行排名?
例如,给定此表,我想在右侧创建Rank列.我应该如何在Access中执行此操作?
SalesPerson Dept #Customers排名 Bill DeptA 20 1 Ted DeptA 30 2 Jane DeptA 40 3 Bill DeptB 50 1 Mary DeptB 60 2
我已经知道如何使用这个SQL代码进行简单的排名.但我不知道如何重做这个来接受分组.
Select Count(*) from [Tbl] Where [#Customers] < [Tblx]![#Customers] )+1
Run Code Online (Sandbox Code Playgroud)
此外,使用SQL Server的Rank()函数有很多答案,但我需要在Access中执行此操作.建议好吗?
我有一个带有文本框的Access表单,该表单允许重复键入数字,按Enter键,并让脚本执行操作.对于速度,该字段应在DoStuff()完成后保持焦点.
但是,虽然我确定它DoStuff()已经运行,但焦点始终转到Tab键顺序中的下一个字段.这就像是Me.MyFld.SetFocus被忽略了.
完成后如何将重点放在此字段上DoStuff()?
Private Sub MyFld_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyReturn Then
DoStuff
Me.MyFld.SetFocus
End If
End Sub
Run Code Online (Sandbox Code Playgroud) 我正在构建一个数据输入表单,其中包含一个运行脚本的"提交"按钮.这很好,但我想采取额外的步骤.
根据我对大多数Web表单的使用经验,无论表单中的光标位置如何,Enter键都可以绑定到某个命令.我希望将回车键绑定到此提交按钮.然后,无论当前哪个字段具有焦点,按Enter键将运行提交脚本.
那么,如何将Enter键与Submit按钮绑定?
我最好的猜测是为每个启用的文本框创建一个OnKeyPress事件.出于显而易见的原因,我希望有更好的方法.
我想知道是否有办法从另一个列表中替换单元格值而无需编写VB脚本.
这是我要解决的问题:
我在列中有姓:
史密斯
琼斯
泰勒
等
我有另一列ID,例如
Smith_ID
Taylor_B
Jones_C
我想换成Smith用Smith_ID,Jones用Jones_C等.显然我的列表比3项更长的时间.
我准备了一个电子表格,我在几个单元格中使用了下拉列表命令(数据验证,列表).我需要提供同一电子表格的两个版本:一个保存为Excel 2007文件,另一个保存为Excel 2010文件.
如果我使用Excel 2010打开Excel 2007文件,在我插入下拉列表的单元格中,对包含列表的单元格的引用会以某种方式更改,并且下拉列表会显示错误的数据.
例如,如果我指定使用列表中的数据作为单元格C20:C25的值,当我使用Excel 2010打开文件时,单元格将更改为D15:D20.我没有发现参考细胞"移位"的趋势.
如果不将Excel 2007仅用于2007文件而Excel 2010用于2010文件,如何防止出现这种情况?
access-vba ×4
ms-access ×4
vba ×3
excel ×2
sql-server ×2
outlook ×1
outlook-vba ×1
sql ×1
ssms ×1
t-sql ×1
vb.net ×1