我用“步骤进入”来确保VBA得到正确的答案。
当我将变量调用到另一个子变量时,它返回零。
Sub ComboBox5_Change()
Call htot
Dim h As Double
TextBox4.Value = h
End Sub
Sub htot()
Call daltutil
Call cobr
Dim h As Long
Dim d As Long
Dim c As Long
h = (d + c + 0.5)
End Sub
Sub dalt
我遇到了一个名为"ComboTest2“的用户表单的问题。它只由两个组合框组成。如果我将USerform实例化为一个对象,那么下面的代码就无法工作,因为Userform的第二个组合框不包含所需的数据。
Sub FillCombo(ByVal row As Long)
Dim rgCities As Range
Set rgCities = Worksheets("Tabelle2").Range("B2:D2").Offset(row)
ComboTest2.ComboBox2.Clear
ComboTest2.Comb
在B栏中,我有一个公司的列表,在表的顶部有一个名为ComboBox1的组合框,还有一个名为InsertContact1的按钮。combobox从B列中提取公司的所有信息,我想要做的是,如果用户从下拉列表中选择Company D并单击“插入联系人”按钮,它将在B列中找到公司,并在下面插入一行--这将允许用户在另一列中输入该公司的联系人(目前是手动的)。
到目前为止我的密码是..。我不太清楚我在哪里出了问题,但我得到了一个错误,上面写着“论点不是可选的”。
这是我到目前为止在Sheet1 (数据库)中使用的代码:
Public Function ContactAdd(SearchedCompany
例如,假设我想要一个添加ComboBox的方法。也许我可以试试这个
Public Sub AddComboBox()
Dim cb As MSForms.ComboBox
Set cb = <Calling form module>.Controls.Add("Forms.ComboBox.1")
End Sub
如何获取<Calling form module>
我有以下Excel电子表格:
A B
1 ComboBox1
2 1.000
3 10.000
4 100.000
5
使用以下VBA将此列表加载到ComboBox中:
Sub UserForm_Activate()
ComboBox1.List = Sheet1.Range("A2:A4").Value
End Sub
到目前为止,这一切都很好。
我现在遇到的问题是,范围A2:A4中的值正在使用数千个分隔器,但是当我将其加载到ComboBox中时,成千上万的分隔符将被删除。如何使用数千个分隔器显示ComboBo
我有一个子窗体,它显示一个简单的datagrid,它允许用户对列进行升序或降序排序。
该数据网格的数据由一个刷新函数提供,该函数使用参数化查询来设置该数据网格的记录源:
Dim query As DAO.QueryDef
Dim recordSet As DAO.Recordset
Set query = CurrentDb.QueryDefs("DatagridQuery")
query.Parameters("one").Value = combobox_1_value
query.Parameters("two").Value =
我很难拿出我指定的变量来代替它。我做错了什么?
Public Sub SampleBox_Change()
Dim str As Integer
If (SampleBox.ListIndex > -1) Then
str = SampleBox.List(SampleBox.ListIndex)
End If
End Sub
Public Sub Samplesdel(str As Integer)
Range(Range("BA1").EntireColumn, Range("BA1").
我有以下代码:
Sub CommandButton1_Click()
Dim NoIO As String
Dim shp1 As Visio.Shape
Dim i As Integer
Set shp1 = Application.ActivePage.Shapes(1)
NoIO = ComboBox1.Value
If NoIO = "7" Then
MsgBox shp1.id
'Target shape id selected'
'Change shape data
我正在尝试将列从一个工作表复制到不同工作簿的另一个工作表。这是我的复制代码:
Private Sub CommandButton2_Click()
Dim sourceColumn As Range, targetColumn As Range
Set sourceColumn = wb.Worksheets(cmb).Columns(Form.ComboBox2.Value)
Set targetColumn = ActiveWorkbook.ActiveSheet.Columns("PART NUMBER")
sourceColumn.Cop
我正在尝试让来自组合框的变量输入。我曾认为这会是一个更简单的任务,但我被困在这一点上,如果能得到一些帮助,我将不胜感激。
我正在使用预打包的代码,这些代码连接到API、连接到服务器并执行某些操作。我正在定制它来做一些额外的计算,所有这些现在都可以很好地工作,但是我用来执行这些计算的变量,在其中一个子例程中,是硬编码的,我希望能够读取它们,而不是使用组合框。我已经使用VB6和VBA做过很多次了,但是我是vb.net (2010)的新手,尽管我的表单上有组合框,但每次引用组合框中的选定数字都会得到一个空结果
在一个更简单的应用程序中,例如下面的应用程序,我可以从组合框中获取数据:
Public C
我正在使用多个组合框,我有4组具有相同更改事件的组合框,例如, 组A: Combobox1,Combobox5,Combobox9…… 组别B: Combobox2,Combobox6,Combobox10 ... 组别C: Combobox3,Combobox7,Combobox11 ... 但是,我是通过为每个事件编写单独的单击事件来实现的。 'Grup A
Private Sub ComboBox1_Click()
On Error Resume Next
If ComboBox1.TopLeftCell.Offset(0, 2).Value <> "
我试图理解VBA作用域类型,这在VBA中是不可能的,但在其他语言(java、scala等)中是可能的:
public sub try()
dim myVar as String
myvar = "hello world"
Call displayVar()
end sub
public sub displayVar()
msgbox (myvar)
end sub
你能给我一些关于这种有限作用域的信息吗?它是动态的还是词汇的,我真的不太明白其中的区别:/
我遇到了组合框的问题,特别是当用户单击下拉菜单中的一个选项时,文本会输入到文档中,但如果他们犯了错误并在组合框中选择了另一个选项,它就会输入两次中的文本(错误和正确答案)。我如何设置它,这样它才能摆脱错误中的文本。 代码如下: Private Sub UserForm_Initialize()
With ComboBox1
.AddItem "F1"
.AddItem "G2"
.AddItem "R3"
.AddItem "G4"
End With
End Sub
Private Sub ComboBo
我很难扩展JComboBox。主要是,我希望添加一个将选定项返回到字符串中的方法。但是,由于以后我可能希望添加更多的方法,所以我决定最好创建一个子类。
import javax.swing.JComboBox;
public class ComboBox extends JComboBox{
public ComboBox(Integer[] items) {
super();
}
public ComboBox(String[] items) {
super();
}
public St
我正在努力开发一种形式,以跟踪发票,因为他们进来。该表单将有一个组合框,在那里我可以点击并选择一个供应商号码。我希望文本框根据从组合框中选择的供应商编号自动填写。到目前为止,我的情况如下:
Private Sub ComboBox1_Change()
'Vlookup when ComboBox1 is filled
Me.TextBox1.Value = Application.WorksheetFunction.VLookup( _
Me.ComboBox1.Value, Worksheets("Sheet3").Range(
如何基于combobox1中显示的(JSON)文本执行下面的代码?
因此,在combobox1中,列A中的所有内容都显示为选项。在combobox1中,当某个选项被选中时,我想根据所选选项超出下面的代码。
例如,如果"Cat": Leonardo",在combobox1中被选中,下面的代码需要对A列中的"Cat": Leonardo",进行删除。
Sub Combobox1text()
Dim sh As Worksheet, lastRow As Long, arr, i As Long
Set sh = Act
您好,我正在使用以下代码来运行一个私有函数。我的组合框中有两个值,一个和两个,还有两个具有相同名称的私有函数,private Sub One()和Private Sub Two()
我希望我的应用程序调用函数,无论用户在组合框中选择什么值。如果在组合框中选择了一个,则应调用私有函数一。感谢代码在下面,它不能工作
公共类Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim vrValue = ComboBox
我试图在VBA中的2sub之间传递一个字符串,但是每次我都有编译错误
这是我的密码
Option Explicit
Private Sub ComboBox1_DropButtonClick()
Dim value As String
value = ComboBox1.value
ComboBox1_Change value
End Sub
Private Sub ComboBox1_Change(ByVal value As String)
Dim value2 As String
value2 = value
End Sub
我得到了以下错误
我已经创建了一个用户表单来填充一个表,我希望这个表单基本上将表中的信息显示为一个列表。因此,为了做到这一点,我有一个唯一的列表,从用户表单中提取数据。下面的VBA是我所使用的。
Private Sub Userform_Initialise()
Dim v, e
With Sheets("dropdowns").Range("I2:I500")
v = .Value
End With
With CreateObject("scripting.dictionary")
.comparemode = 1
For Each e I
‘我怎样才能简化这段代码呢?对我来说它是有效的,但只要稍加改动,我就必须改变每一个方框,而且像这样令人困惑。有没有简化的方法。提前谢谢*
我没有那么多的编码经验,如果你有一个答案,请不要那么技术性。‘对我来说,如果我做一些小的改变,所有的文本框都会受到影响,这会更容易。现在的情况,就像你看到的,我必须在每个文本框中进行更改
Private Sub ComboBox1_change()
On Error Resume Next
Dim x As Double
x = 100
Me.TextBox9 = (Val(Me.TextBox5) + Val(Me.TextBox6)) / 100
我创建了一个userform子,允许用户使用组合框从打开的工作簿中选择作为参考工作簿。我的当前脚本正在返回一个没有定义workbooks(wb)的错误--我假设这是因为变量是在两个不同的模块中定义的,并且组合框不在调用的模块中。理想情况下,希望使用下面的userform
Private Sub Go_Click()
If ComboBox1.ListIndex = -1 Then
MsgBox "Please select a workbook name and try again"
Exit Sub
End If
Dim wb
我和VB6有点问题。我有一个表单,上面有几个ComboBox对象。我希望通过一个以SQL查询为参数的函数来填充ComboBoxes。所以代码看起来像这样
Private Function FillComboBoxFromMDB(ByVal sDBName As String, _
ByVal sSQL As String) As ComboBox
'/*
' * Execute SQL in MDB and fill the ComboBox with the results
我想传递一个由用户选择的值,该值将显示在MsgBox中。我编写了以下代码,但它没有显示任何内容。
Public Sub CommandButton1_Click()
SelectedCity = Me.ComboBox1.Value
DistSystem
End Sub
Sub DistSystem()
MsgBox (SelctedCity)
End Sub
下面的代码允许我将textbox & combobox数据保存到文件中.
sw = New StreamWriter(fname, False)
For i As Integer = 1 To 9
Dim tb = DirectCast(t3frm.Controls("TextBoxLo" & i), TextBox)
Dim cb = DirectCast(t3frm.Controls("comboboxlo" & i), ComboBox)
sw.WriteLine(tb
我有一个带有(2) UserForm的Excel ComboBoxes。两个组合框都列出了来自"H“范围的信息,而ComboBox2应该列出来自"V”范围的信息。知道我在这里做错了什么吗?我对VBA还是很陌生的,我知道我的代码可能很草率。请保持容易理解,谢谢!
Private Sub Userform_Initialize()
LookAhead.Caption = Span & " Week Look Ahead"
' Sets range for ComboBox lists
Dim rng As Range, r As Range
我正在为以下场景寻找最佳实践(或任何可行的解决方案):
我有一个Employee类:
public class Employee
{
public string DisplayName
{ get; set; }
// It is important that this method has a parameter
public string GetSomething(string param)
{ return param + DisplayName; }
}
我有一个List<Employee>类型对象,它绑定到XAML中的ComboB
这个特定的代码ComboBox2.SelectedItem查询对我的数据库有一个错误。我想我在这个代码ComboBox2.SelectedItem中遗漏了一些东西
Private Sub UpdateCombo()
ComboBox2.Items.Clear()
SQLcon.Open()
Dim Command As SqlClient.SqlCommand = SQLcon.CreateCommand()
Command.CommandText = "Select productName From tblProduc
我想知道是否有任何方法可以在VB2008中键入公共名称的组件。参见下面的示例。
Private Sub ComboBox3_GotFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox3.GotFocus
Dim get_current As String
get_current = ComboBox3.Text
ComboBox3.DataSource = GetMailItems("default_values", "nationality
我相信你会发现我做不到的问题。下面你可以看到我遇到问题的代码的简历。在更改combobox1中的值后,它会显示一个错误“编译错误.参数不是可选的”,突出显示为黄色"Sub ComboBox1_Change()“和蓝色"Call TextBox4_Exit”。我想我做错了必要的争论,但不知道如何处理。
谢谢你的帮助。
Sub ComboBox1_Change()
If TextBox4.Visible = True And TextBox4.Value <> "" Then
Call TextBox4_Exit
End If
Sub Tex
我有一个从F2到G230的表。F列是员工编号,G列是员工名称。我试图制作一个简单的程序,为员工登记食品订单,并将数据导出到一个表中。一切正常,除了从下拉列表中选择员工时,我希望员工号出现在文本框中。
这是我的全部代码:
Private Sub cmdbutton_add_Click()
Dim iRow As Long
Dim ws As Worksheet
Set ws = Worksheets("listi yfir skráningar")
'find first empty row in database
iRow = ws.Cells.Find(What:=
我正在编写一个工作表,允许用户在预先记录的数据的两个时间值之间筛选数据。此数据的时间格式降至十分之一秒(HH:MM:SS.0),虽然combobox列表将显示所有这些值,但当选择一个值时,它将被截断为第二个值。我已经做了一些查找,并发现了很多信息,关于调用时间毫秒为当前时间,但不只是为了格式化一个显示。下面是我的组合框代码当前是如何读到的:
Private Sub ComboBox21_Change()
With ComboBox21
.Value = Format(.Value, "hh:mm:ss")
End With
End Sub
我尝试了几种不同的选择,包
我正在尝试重用一些代码,从而在调用函数中进行控制,以获得不同的结果。问题似乎是如何获得对我想要更新的不同控件的引用。
Function populate(num1, num2)
Dim index As Integer
index = ComboBox1.ListIndex
ComboBox2.Clear
Select Case index
Case Is = 0
With ComboBox2
ComboBox2.List = Worksheets("Sheet1").Range("A1:A10").Valu
我所拥有的是一个包含一个组合框和一个DataGrid的用户控件,我要做的是从另一个名为Class1的类中访问UserContorl方法,在第1类中,我有一些方法可以利用UserControl中的方法(因为用户控件包含必要的数据,比如combobox.tex)。
//The user control Code
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
我正在尝试设置一个sub以被调用,并在主Sub中使用其结果的值。到目前为止,我一直在使用函数来传递值。然而,我想知道是否有其他方法来做同样的事情呢?我认为ByVal/ByRef是另一种通过使用Sub而不是函数来实现它的方法。我目前的代码如下:
Sub Main()
Dim i as Long
i = lr("A")
'some other calculations using i
End Sub
Function lr(Tar As String) As Long
Dim twb As Workbook
Set twb = ThisWorkbook
lr = T