首页 > 解决方案 > 使用输入和命令按钮制作 vba 用户表单

问题描述

我做了一个宏(commandbutton),它正在工作(可能不是最好的解决方案,但它正在工作):

Private Sub CommandButton1_Click()
 Dim myval As Variant
 Dim ws As Worksheet
  myval = InputBox("Zadaj číslo riadku:")
  Set ws = ActiveSheet
If StrPtr(result) = 0 Then
 ElseIf myval = vbNullString Then
Else
  ws.Range("F3").Value = myval
End If
 ws.PrintOut From:=1, To:=1
End Sub

现在我想做一个USERFORM. 我做的:

屏幕

但现在我被困住了:

  1. 我不知道如何从textbox. (第 1 页将有 3 个输入)

  2. 问题是循环。我想做一个循环 -input2input3. 例如:Input2.value = 1, Input3.value = 60,那么我想要一个从 1 到 60 的循环。

标签: excelvbauserform

解决方案


文本框包含文本,但循环需要数字。尝试这样的事情:

Dim lngText1 as Long
Dim lngText2 as Long
Dim i as Long
If IsNumeric(Me.Controls("textbox2").Value) And isNumeric(Me.Controls("textbox3").Value) Then
  lngText1 = CLng(Me.Controls("textbox2").Value)
  lngText2 = CLng(Me.Controls("textbox3").Value)

  For i = lngText1 To lngText2
    'Your code
  Next i
Else
  MsgBox "Please insert numbers"
End If

推荐阅读