私は最近、ビジュアル基本スタジオを使用して.NETビジュアルベーシックでプログラミングを開始しました。私もいくつかのマクロを作るためにVBAを使っています。答えは明白であれば、誰かが、謝罪を私は持っている質問に答えることができれば、私は非常に感謝だろう、私は始めたばかりだ:ExcelとVisual Basicの間で変数を共有
基本的に、私はエクセルVBAで変数を設定した場合、例えば:
dim text as string
text = "hello world"
Visual Basicでプログラミングするときにその変数を使用し、Excel VBAマクロで設定したときの値を保持することは可能でしょうか。
説明が必要な場合は、ご意見ください。
多くのありがとうございます。
SOLUTION:次のように
オーケー、私はソリューションの助けを借り、VBで動作するコードでそれを把握するために管理は、次のとおりです。別の変数にアクセスするための
Imports Microsoft.Office.Interop.Excel
Imports Microsoft.Office.Interop
Imports Microsoft.Office.Core
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim oxl As excel.application
Dim owb As excel.workbook
Dim osheet As Excel.worksheet
Dim orng As excel.Range
Dim strtext As String
oxl = CreateObject("Excel.application")
owb = oxl.Workbooks.Open(Filename:="C:\Users\USERNAME\Documents\Variable Passing Test.xlsm")
oxl.Run("dosomethingtostrtext")
strtext = oxl.Run("getstrtext")
MsgBox(strtext)
End Sub
End Class
値を渡すことは常に可能ですが、どのように行うかは、値で正確に何をしたいかによって決まります。 2つのプログラムが並んで実行されているか、お互いに値を渡してロックステップで実行していますか?または、次の時間に実行されるたびに、実行中のものと別の出力をどこかに保存しておきますか?また、別々に実行する必要がありますか、.NETアプリケーション内からVBAマクロを実行するだけですか? – Mikegrann