none
VS2008 & VS2010 巨集是否可以接受兩個以上的自訂變數? RRS feed

  • 問題

  • 請問各位大大
    VS2008巨集功能可以使用自訂參數來執行。
    可是小弟在命令列執行巨集時遇到幾個問題
    1. 參數不論是英文或是數字都會被視作是字串
    2. 由於1,在命令列只能接受一個字串當作參數
    不知道是操作不當,還是IDE本身就有所限制
    命令列指令:
    >Macros.MyMacros.RecordingModule.CustomForLoop rIndex 255
    範列巨集:
    Sub CustomForLoop(Optional ByVal Var As String = "i", Optional ByVal MaxCount As Integer = 1)
            DTE.ActiveDocument.Selection.Text = "for(int " & Var & " = 0;" & Var & " < " & MaxCount & "; " & Var & "++)"
            DTE.ActiveDocument.Selection.NewLine()
            DTE.ActiveDocument.Selection.Text = "{}"
            DTE.ActiveDocument.Selection.CharLeft()
            DTE.ActiveDocument.Selection.NewLine(2)
    End Sub

    請有在使用Visual Studio巨集的人幫忙解答...感謝

    2011年12月13日 上午 09:21

解答

  • Hi,

    你要不要考慮用Intellisense去做啊

    看你只是在用巨集造迴圈


    謙卑學習,持之以恆,才能不斷的Level Up http://www.dotblogs.com.tw/larrynung/
    • 已標示為解答 Lamliu968 2011年12月16日 上午 02:05
    2011年12月13日 上午 09:33

所有回覆

  • Hi,

    你要不要考慮用Intellisense去做啊

    看你只是在用巨集造迴圈


    謙卑學習,持之以恆,才能不斷的Level Up http://www.dotblogs.com.tw/larrynung/
    • 已標示為解答 Lamliu968 2011年12月16日 上午 02:05
    2011年12月13日 上午 09:33
  • 這篇文件就有建立兩個參數的巨集:How to: Run Macros 
    2011年12月14日 上午 01:45
  • 感謝兩位的回覆

    Intellisense真的是個不錯的方法

    只是,試過了How to: Run Macros

    命令列執行巨集,還是不能接收兩個參數(這個情況只有在命令列執行才有, 巨集呼叫巨集時就正常了)

    空白字元跟參數2都會被當作參數1的字串了

    命令列指令:

    >Macros.MyMacros.RecordingModule.Test "Test run number : " 20

    範列巨集:

    Sub Test(Optional ByVal FirstArg As String = "FirstArg", Optional ByVal SecondArg As String = "SecondArg")
            MsgBox(FirstArg & vbCr & SecondArg)
    End Sub

    2011年12月14日 上午 02:37
  • Hi,

    恩~據我測試~也是這樣


    謙卑學習,持之以恆,才能不斷的Level Up http://www.dotblogs.com.tw/larrynung/
    2011年12月14日 上午 06:00
  • Sorry~我好像寫錯了~那應該是叫Code Snippets才對...orz...
    謙卑學習,持之以恆,才能不斷的Level Up http://www.dotblogs.com.tw/larrynung/
    2011年12月23日 上午 08:03