我已经接近拥有准确的语法了,只有一个大问题!
我从输入框捕获的用户ID没有传递到报告中,因此我必须输入两次用户id。
为了实现这一点,需要修改哪些内容?
Public Function userProd() As Integer
Dim userID As String, saveloc As String, filename As String, reportname As String
'Report Name
reportname = "rpt_UserProduction"
'Setting Save location
saveloc = "
我正在将我们的word工具从VBA转换到C#。我有一个非常笼统的问题:
VBA中有许多内置函数,它们似乎不直接转换为c#。例如,DoEvents关键字只能通过带有application.DoEvents的windows表单库访问。
内置的弹出框是另一个例子--我还没有弄清楚。
在VBA中:
dim s as string
MsgBox("Prompt") //Simple message
s = InputBox("Prompt") //Get user input
目前,我已经转而使用windows窗体--这很好;但是,我想知道是否有内置的弹出窗口模仿VBA中
我需要的是给用户控制来选择一些将在程序中使用的单元格。在许多excel函数中都可以很容易地看到该界面,例如在向图形插入数据时。
预先选择的范围可以很容易地访问为Globals.ThisAddIn.Application.ActiveWindow.RangeSelection,但这不是我正在考虑的,因为我需要多个这样的范围。我在visual-studio上试了一下,有一个Interaction.InputBox函数可以接受字符串,据说它相当于vba的Inputbox,但是vba的inputbox有输入数据类型的参数,而c# inputbox没有。
与此等效的VBA是
Dim rngX as Ra
我在MS中有一个表单,在这里,在单击事件按钮上,我有以下代码正在运行。我的目标是让用户在按钮上输入一个值,点击一个表单,然后将这个值发送给使用openargs的报表。我想在这个查询中添加openargs参数,但是当我在inputbox上输入一个值并点击enter时,我会得到一个名为"Enter Parameter“的提示符,它要求我为报告中的所有字段输入值。我是VBA的新手,不知道自己做错了什么
表单
strInput = InputBox("Which value did you want to print?")
DoCmd.OpenReport "0
你能帮我在VBA中实现SQL查询变量吗?我得到语法错误的日期,时间戳或ODBC,DB2 ......thank你
Dim startdate As Date
Dim enddate As Date
startdate = InputBox(startdate, "YYYY-MM-DD")
enddate = InputBox(enddate, "YYYY-MM-DD")
我正在尝试将变量实现为SQL语句中的where子句:
where atindt>='" & startdate & "' and atind
我希望删除不符合我的输入框值的所有内容。但是,我使用的循环似乎根本不起作用!这段代码似乎没有读取循环。循环应该删除E列中与我的inputbox变量不匹配的每个单元格的整行。我运行代码,在输入框中插入值,任何内容都不会被删除。
有人能帮我吗??
'Get the Tenrox code to be deleted
tenroxcode = InputBox("Insert the Tenrox Code that you want to keep")
'Find and delete all unnecessary tenrox codes
r = App
很简单的问题。我要求用户输入日期。我正在使用该日期的月份来查找月份名称(5表示5月,6表示6月,等等)。我有一个用西班牙语写的month_id和month_name (1-enero,2-febrero等)的名为months的参考表。我用VBA写下这段代码:
Dim FileDate as Date
Dim DateString as String
DateString = InputBox("Enter the file date in MM/DD/YYYY format", "Title")
FileDate = DateValue(DateString)
我使用excel vba,制作一个枢轴表。在我使用枢轴“值MAT19”和“体积(Kg) MAT 19”的值部分中的两列构建枢轴之后,我想在枢轴上添加一个派生字段,即'Value MAT19‘/’容积(Kg) MAT 19‘。但是,我不想自己修复列名,而是给用户一个控件来选择枢轴中的列(可以是值MAT18或值MAT17,也可以是VBA列的值MAT17),因此我使用了VBA的InputBox特性。但是我运行宏之后,计算出的字段就不会出现了。这是我为它写的代码。我已经将myValue和myVolume声明为字符串变量。列最终API将显示在枢轴中,但未显示最终Val/Vol.II。
Acti
我有这个VBA代码
Sub DeleteRows()
Dim rng As Range
Dim InputRng As Range
Dim DeleteRng As Range
Dim DeleteStr As String
xTitleId = "Delete"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
DeleteStr = Application.InputB
大家好,我需要帮助,在这个vba代码的微软访问,我试图做。我试图使用vba从表中筛选数据,到目前为止,设置它的方式是,每当某个事件发生时,让用户在字段中输入一个值,以筛选该列的数据,例如"First“或"Last”。我的问题是,每当我尝试筛选多个字段时,它都不会保存我筛选过的上一个字段中的筛选数据。例如,如果我过滤了名为James的名字的数据,我就会得到一个表,其中有所有名字为James的人,但是后来,当我过滤姓的时候,我使用了Bell,它只查找姓Bell的人,而不是寻找名字"James“的人,因为我已经指定了名字。
Private Sub txtFirstName_C
我希望将工作表中的一行“更新”复制到"6.2022基础“中的表中。我已经设置了我的VBA,但是在不覆盖表中的一行数据的情况下,我很难让它工作。有没有一种方法可以让我的VBA在我的表中添加一个新行,然后再粘贴它呢?我在表中有一个排序VBA,它要求将新行包括在表中。我的表没有空白行,我需要这个命令按钮来自动复制选定的行并粘贴它(此excel工作表将被其他人使用,并将被锁定用于某些功能)。这是我目前的代码
Private Sub CommandButton3_Click()
Dim rngToCopy As Range
On Error Resume Next
Set rngToCo
我在寻找这段代码的替代方案。我需要选择所有名为“导出1”、“导出2”的行,等等,不包括“导出测试”。
Sub CopyManager()
Dim Source As Worksheet
Dim Target As Worksheet
Dim valsArray As Variant
valsArray = Array("Export *") '<--| define your values to be filtered on Source sheet column A
' Change worksheet de
我在一个单元格中有下面的excel数据
Pankaj sharma;#234;#khushal verma;#786;#parul datta;#456;#
我想使用VBA将其转换为以下内容:
pankaj sharma
khushal verma
OP注释的代码:
Sub test1()
Dim rng As Range
Dim InputRng As Range, OutRng As Range
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection.Range
我正在尝试在VBA代码中执行SQL查询。该查询在MS Access中工作,并要求用户输入Customer_Name和Part_Number的值
我所做的是在Outlook中编写VBA代码,这样我们就可以运行宏来执行outlook中的查询。我目前拥有的代码一直工作到DoCmd.RunSQL部分的最后一行。我想我把这个语法搞错了。我需要告诉它运行上面列出的SQL字符串:
Public Sub AppendAllTables()
Part_Number = InputBox("Enter Part Number")
Customer_Name = InputBox("Ente
在Microsoft中运行宏时,我试图使用VBA代码。
我在excel中通过"RecordMacro“运行宏。
在宏中,我需要使用一些VBA代码。为此,我单击Visual,然后使用一些VBA代码。
在宏期间,VBA代码按指定的方式工作,但当我单击“停止记录”并尝试运行宏时,它会完全遗漏VBA部件。
在启动宏之前,VBA代码已经存储在我的工作簿中,所以我不认为这是复制和粘贴问题。
若要自己尝试,请在列中写入数字列表,记录和宏并尝试执行以下代码。
Sub SplitColumn()
'Updateby20141106
Dim rng As Range
Dim
我想构建一个VBA宏来拥有一个单元格,在那里我可以键入一个字符串,启动一个宏,它从另一个名为PIVOT的工作表中筛选出一个数据透视表。
我确实有一个通过Inputbox的解决方案(见下文),但我更喜欢使用单元格。
Sub Macro1()
Dim IdentificationNo As String
IdentificationNo = InputBox(Prompt:="Identification", Title:="ENTER IDENTIFICATION NUMBER")
Sheets("PIVOT").PivotTables(
我是Macro的新手,我需要以下代码的帮助。我想在一个列上过滤用户提供的三个日期。下面的宏给了我空白的结果。
Sub newdate()
Dim today As Date, yesterday As Date, tomorrow As Date
yesterday = CDate(Application.InputBox(Prompt:="Please enter yesterday date:", Type:=2))
today = CDate(Application.InputBox(Prompt:="Please enter today dat
我希望在循环的末尾,他会在msg框中显示从a1到a2的所有数字,但他会取有7的数字,并写成“a1”,我需要在最后部分做什么? ? Private Sub booming_Click()
Dim a1 As Integer, a2 As Integer
Dim i As Integer, s As Integer
a1 = VBA.InputBox("what's your first number?")
a2 = VBA.InputBox("what's your second number?")
If a1 < 10 Or
在输入框中,我试图允许用户只输入特定的文本,在这种情况下,每周、每月、每季度、每半年或每年一次。这看起来很容易,但我就是不知道我错在哪里。
Do
frequency = InputBox("Please enter your savings frequency.")
If frequency <> "weekly" or "monthly" or "quarterly" or "semiannually" or "annually" Then
我需要帮助这项任务在excel中,我有一个大文件,在那里它有过滤器,首先我需要过滤FCDP 21,值我必须复制,然后重复过滤,但MSR 21,并在那里粘贴这些值,这是我写的代码,但它不工作时,需要粘贴的值。
Dim s As Range
Dim visible_source_cells As Range
Dim destination_cells As Range
Dim source_cell As Range
Dim dest_cell As Range
With Range("A2:R667")
.AutoFilter field:=5, Criteria
因此,目前在特定条件下,我会弹出这个InputBox,供用户输入注释,然后该框将这些注释填充到一个单元格中。我想要做的是,如果注释已经在InputBox填充注释的单元格中,这些注释将已经出现在输入字段中,以便用户可以添加到它们中。我不知道这是否可以做到,在谷歌上也找不到任何东西。如果不能做到这一点,我只需要使用用户表单实例。 ? 当前打开输入框的代码如下,"notes“是InputBox填充的字段: If InStr(OPs, "Incomplete") > 0 Or InStr(OPs, "Miss") Then
notes.I
在VBA中,InputBox(Type:=8)只能选择一个范围。有没有办法选择几个范围,比如2个或3个?
Dim t as Range
Set t = Application.InputBox("Select destination range:", Type:=8)
类似于:
Dim t As Ranges
Set t = Application.SomeOtherInputBox()
我认为我的代码是好的,但它显示类型错配后,我运行它,有人能帮忙吗?(类型错配来自性别部分)
Sub tuitioncal()
Dim Name As String
Dim Gender As String
Dim LocalID As String
Dim CreditUD As Integer
Dim GenderAbb As String
Dim tuitionFee As Double
Dim uniFee As Double
Dim totalFee As Double
Name = InputBox("E
我试图通过excel中的一个过滤列表运行这个循环/代码,其中行号不是按顺序排列的--例如,符合过滤条件的第一行可能是第3行,后面是第7行,然后是第34行。
这是我的当前代码,它运行于指定范围内的每一行,但对于筛选后的列表不起作用。您将如何修改代码以使此循环能够通过筛选的列表运行?
Sub specialloop()
Dim i As Integer
Dim j As Integer
Dim input_var As String
lastrow = Cells(Rows.Count, 1).End(xlUp).row
rowinput = InputBox("input row num
我正在运行一个VBA和我有问题的取消按钮,我不想改变值在单元格如果按下取消按钮或转义按钮。怎么继续?
Private Sub Workbook_Open()
Sheets("Start").Range("B1").Value = Application.InputBox(Prompt:="Insert Date", Type:=1)
Cancel = True
End Sub
我试图将一个变量从word VBA传递给批处理文件。变量是用户必须键入用户名的输入框。然后,批处理文件将接受该用户名,并在我们目录中的AD组中检查它。我必须首先在VBA中显示变量,因为我需要在批处理文件运行后在VBA脚本中操作它(除非将批处理变量传递给word vba更容易)。我所做的所有研究都让我得出了这样的结论:
Dim val, r As String
r = InputBox("Please enter your username:")
val = "path\mybat.bat" & r
Call Shell(val, vbNormalFocu
我正在VBA Powerpoint中开发一个倒计时器,它接受小时、分钟和秒的输入,并计算剩余的时间,只需将其计数为0。
“工作守则”:
Sub countdown()
Dim time As Date
hours = InputBox("Hour")
minutes = InputBox("Minutes")
seconds = InputBox("Seconds")
time = Date + TimeSerial(hours, minutes, seconds)
Do Until time < Now()
DoEvents
Ac
我正在尝试编写一个宏以跳转到Excel中的一个单元格,在那里我会通过高亮显示来选择一个特定的列,然后跳转到包含来自不同列的搜索值的行。我知道如何制作宏和快捷方式,这只是我正在挣扎的vba代码。我发现这个宏只需要知道如何更改它,以便跳转到包含特定列中的搜索值的行,而不是输入的行号。
Sub JumpTo()
'Description: Select the specified row or column
'If row is specified, active column is used
'If column is specified, active row i
我试图在宏vba中插入公式,并将输出写入单元格,但我得到了一个运行时错误。我不是一个vba开发人员,所以我不能理解哪里出了问题。我只写了一些简单的宏。到目前为止,我是这样写的:
Sub count()
Range("E6").Formula = "=SUM(IF(FREQUENCY(MATCH(A2:A96;A2:A96;0);MATCH(A2:A96;A2:A96;0))>0;1))"
End Sub
我希望在E6单元格中将获得输出,只使用公式我得到51,但当我运行宏时,我得到了错误。有什么帮助吗?谢谢
编辑:使用InputBox
Dim my
理论上,下面的程序应该读取学生的名字和高度,如果一个空的值被插入到"Stud“,循环应该结束。最终目标是显示最高学生的姓名和身高。我使用变量"K“来识别循环中最高的值,但是我遇到了死胡同。不幸的是,我坚持了以下几点:
当插入空的"Stud“时,第一个结束循环;第二个标识最高的学生的名字,第三个在MsgBox中创建一个表,说明每个学生的名字和高度。
非常感谢,
Sub C4()
Dim Stud As String
Dim High As Single
Dim cat As String
Dim k As Byte
Stud = InputBox(
所以我对VBA完全陌生。我有一个java爱好者,所以我对编程并不陌生,但是使用VBA操作办公文档似乎更容易。总之,在话题上:
我目前正在公司中实现自动化(这个例子是创建一个合同)。然而,使用Java时,我总是学会编写健壮的代码,尽管VBA代码现在可以工作,但我对它并不满意,因为它需要用户的大量“友好”。所以我的问题是(希望你不介意),你能给我一个正确的方向来使我的代码更加健壮吗?
下面是代码:
Function spaties(Name As String) As String
' Function used to ensure the length of a String (Work
我有vba代码片段,我正在尝试修改它,这样我就可以在预定义的单元格范围内自动为每个单元格中的文本着色。我的代码片段为用户输入范围提供了一个"InputBox“,但是,我想用预定义的范围替换代码中的提示符,这样用户就不会被提示。你能帮我指出正确的方向吗?这是我一直在使用的代码。在此之前,非常感谢您。
Sub changeTextColor()
Dim rng As Range
Dim WorkRng As Range
Dim xRed As Byte
Dim xGreen As Byte
Dim xBlue As Byte
On Error Resume Next
xTitleId =
我有一个相当大的excel文件,其中包含员工列表、几列工资支票数据,然后是分配给收集这些数据的会计周。
我正在尝试搜索这些数据,并在宏中将某个员工与特定的会计周进行匹配。我有一个解决方案,可以找到名称,但不会打印出会计周,而且速度非常慢,我相信有更好的方法来完成这个简单的任务。下面是我所拥有的,它非常简单,最后我将需要捕获行中的数据,但现在我只是打印有概念的证据。
Sub loop_test()
Dim ClientTable As Range
Dim rng1 As Range, rng2 As Range, desired_emp As String, desired_fw
我有一个VBA宏,它在Excel 2010中运行得很好。当我在Excel2016中运行它时,我在"nCashAdded =Application.InputBox“开头的一行中得到”找不到项目或库“:
Sub InsertNewHistory()
Dim nCashAddedInPeriod As Long
nCashAdded = Application.InputBox("Cash added in previous period:", "Cash In Period", Type:=1)
以下是我设置的参考资料:
我应该有其他的推荐信吗
我有一个vba代码,用于输入在工作簿中打开工作表的密码。
If Intersect(Target, Range("C21")) Is Nothing Then
Else
Dim Wachtwoord As String
Wachtwoord = InputBox("Geef het wachtwoord op")
If Wachtwoord = "peflex" Then
Sheets("Matrix").Select
ActiveSheet.Range("A1").Sele
我目前正在使用Access 2007创建一个窗体,其中的组合框可以过滤可编辑子窗体。
该子窗体基于一个查询,该查询从组合框中获取一个Project_ID,并根据该Project_ID号过滤子窗体表。在窗体视图中,我可以更改组合框,并在手动刷新后过滤子窗体。但是,子窗体不会随着组合框的更改而自动过滤。
我不知道哪里出了问题。我尝试了多种VBA变体,但都不起作用。我目前正在使用更改后的VBA脚本来加载子窗体。
Private Sub cboProjectSelect_AfterUpdate()
Me!Project_Tracker_Subform.Form.Requery
End Sub