tft每日頭條

 > 科技

 > excel vba中鼠标移動順序

excel vba中鼠标移動順序

科技 更新时间:2024-12-02 21:49:29

用 VBA 實現鼠标點擊輸入數據

excel vba中鼠标移動順序(EXCEL中用VBA實現鼠标點擊輸入數據)1

本文分享内容:用VBA代碼實現鼠标點擊輸入數據。主要分享ActiveWindow.RangeSelection 在VBA中的運用

實現功能:當鼠标點擊指定區域時,指定輸入框自動獲取鼠标點擊的單元格内容,從而實現用鼠标進行數據的快速輸入。

本文最後會附教程下載地址和代碼解釋。

1、清除按鈕的制作:

1.1如下圖,點擊開發工具,在表格中制作一個按鈕。

excel vba中鼠标移動順序(EXCEL中用VBA實現鼠标點擊輸入數據)2

1.2 彈出的對話框點擊取消

excel vba中鼠标移動順序(EXCEL中用VBA實現鼠标點擊輸入數據)3

1.3 選擇按鈕,更改名字為“清除”。

excel vba中鼠标移動順序(EXCEL中用VBA實現鼠标點擊輸入數據)4

1.4 點擊開發工具—Visual Basic 打開VBA窗口。

excel vba中鼠标移動順序(EXCEL中用VBA實現鼠标點擊輸入數據)5

1.5 鼠标右擊空白處,插入模塊

excel vba中鼠标移動順序(EXCEL中用VBA實現鼠标點擊輸入數據)6

1.6 在模塊内輸入代碼。Range("D6:I6")表示要清空D6到I6單元格的數據。

excel vba中鼠标移動順序(EXCEL中用VBA實現鼠标點擊輸入數據)7

1.7 選擇按鈕,右鍵選擇“指定宏”

excel vba中鼠标移動順序(EXCEL中用VBA實現鼠标點擊輸入數據)8

1.8 選擇“清除”後确定,清除按鈕制作完畢。

excel vba中鼠标移動順序(EXCEL中用VBA實現鼠标點擊輸入數據)9

2 鼠标點擊事件

2.1 鼠标右鍵點擊該工作表,選擇查看代碼。

excel vba中鼠标移動順序(EXCEL中用VBA實現鼠标點擊輸入數據)10

2.2 然後按下圖所示選擇“worksheet”和“selectionchange”

excel vba中鼠标移動順序(EXCEL中用VBA實現鼠标點擊輸入數據)11

excel vba中鼠标移動順序(EXCEL中用VBA實現鼠标點擊輸入數據)12

2.3 代碼輸入:然後輸入如下代碼。(括号内為代碼解釋)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

i = ActiveWindow.RangeSelection.Row(獲取鼠标點擊的行号)

k = ActiveWindow.RangeSelection.Colum(獲取鼠标點擊的列号)n

If i >= 8 And i <= 12 And k >= 4 And k <= 9 Then (鎖定鼠标點擊區域。鼠标在單元格8至12行,4至9列内點擊)

If Sheet1.Range("d6") = "" Then (當第一個輸入框是空值時,将鼠标點擊單元格的值賦值給輸入框)

Sheet1.Range("d6") = ActiveWindow.RangeSelection

Exit Sub

End If

If Sheet1.Range("d6") <> "" And Sheet1.Range("E6") = "" Then(當第一個輸入框不是空值,第二個輸入框是空值時,将将鼠标點擊單元格的值賦值給第二個輸入框)

Sheet1.Range("E6") = ActiveWindow.RangeSelection

Exit Sub

End If

以下代碼同上,依次判定輸入框是否有内容,依次賦值。

If Sheet1.Range("d6") <> "" And Sheet1.Range("E6") <> "" And Sheet1.Range("F6") = "" Then

Sheet1.Range("F6") = ActiveWindow.RangeSelection

Exit Sub

End If

If Sheet1.Range("d6") <> "" And Sheet1.Range("E6") <> "" And Sheet1.Range("F6") <> "" And Sheet1.Range("g6") = "" Then

Sheet1.Range("g6") = ActiveWindow.RangeSelection

Exit Sub

End If

If Sheet1.Range("d6") <> "" And Sheet1.Range("E6") <> "" And Sheet1.Range("F6") <> "" And Sheet1.Range("g6") <> "" And Sheet1.Range("h6") = "" Then

Sheet1.Range("h6") = ActiveWindow.RangeSelection

Exit Sub

End If

If Sheet1.Range("d6") <> "" And Sheet1.Range("E6") <> "" And Sheet1.Range("F6") <> "" And Sheet1.Range("g6") <> "" And Sheet1.Range("h6") <> "" And Sheet1.Range("i6") = "" Then

Sheet1.Range("i6") = ActiveWindow.RangeSelection

Exit Sub

End If

End If

End Sub

excel vba中鼠标移動順序(EXCEL中用VBA實現鼠标點擊輸入數據)13

教程下載地址:https:///s/1a7L64MgSWcvx167eYRZf0w?pwd=oi78

提取碼:oi78

有喜歡本文的可點贊、轉發、評論支持哦。希望大家多多支持!

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved