2016-12-05 48 views
0

我在寫一個宏,它比較兩組值並在出現任何差異時警告用戶。當找到差異時,我希望用戶輸入他們的評論。爲了讓他們很容易理解我在問什麼,我想顯示我用來獲取評論的InputBox中的所有數字。示例InputBox我想要看看如下:MsgBox中的表

Difference between warehouse and accounting records! See details below, insert reason. 

Product: Toyota Corolla 

------------------------------ 
|Item |Warehouse|Accounting| 
------------------------------ 
|Wheel |  3|   3| 
------------------------------ 
|Engine |  2|   3| 
------------------------------ 
|Door |  7|   7| 
------------------------------ 
|Gearbox|  5|   5| 
------------------------------ 
|Roof |  4|   3| 
------------------------------ 

在這種情況下,警報是由Roof和Engine的不同值引起的。填充表格的數字存儲在變量中。如何製作這樣的表格,這對於需要輸入評論的用戶來說很清楚。

+0

你可以試試這樣說:http://stackoverflow.com/questions/28190915/display-a-table-in-the-userform-b​​y-extracting-from-excel-sheet –

+0

@Jordan避風港我嘗試了很多,因爲我一開始就陷入了或多或少的困境。搜索幫助,但我能找到的所有內容都是關於展示一張作爲工作簿一部分的表格,而不是構建一個全新的表格。 –

+4

爲什麼不創建用戶表單?如果你還沒有做到這一點,那真的不是那麼多工作(並且很容易找到教程)。如果需要向用戶顯示格式化數據,輸入/消息框並不是最好的。 –

回答

2

一些額外的研究後,我發現,我錯過了關鍵的命令是vbTab

下面的代碼返回與表中的輸入框格式很好足夠清晰的數據呈現。

Sub TestMsg() 
    Dim testcom As String 
    testcom = InputBox("Enter answer" & vbNewLine & "axx" & vbTab & "b" & vbNewLine & "c" & vbTab & "xxd") 
    MsgBox testcom 
End Sub 
+1

這是一個不錯的,快速和骯髒的解決方案。如果是爲他人在工作中使用,我會建議嘗試調整它,也許作爲用戶形式。有一點專業潤色總是很好的。 –