投稿日 | : 2003/01/26(Sun) 00:05 |
投稿者 | : 上総ノ助 |
URL | : |
タイトル | : Re^2: 任意に選択したセルに出力 |
花ちゃん さん ご返事、ありがとうございます。
ラベルコントロールのキャプションへとアドレスを表示させるためのコード自体が
まるで違います。
最後の方でオブジェクトを解放するということをやっていませんでした。
おかげさまでラベルに" 1 1"とエクセルに"12"を表示することはできましたが、
それはこちらが任意に選択したセルではなく新しいBook2のA1左上です。
ではエクセルを開かずに実行すると立ち上がり左上に"12"が表示されます。
ラベルは" 1 1"です。
そこでエクセルのBook1、Sheet2、B3セルを選択アクティブにして
F8で1行ずつ実行して変数の値を見てみました。
> Set xlApp = New Excel.Application
Set xlApp = Nothing→"Excel.Application"
Excel.Application = <オブジェクト変数またはwhith変数が設定されていません。>→変わりません
> Set xlBook = xlApp.Workbooks.Add
Set xlBook = Nothing→表示されません
> Set xlSheet = xlBook.Worksheets(1)
Set xlSheet = Nothing→表示されません
> R = xlApp.ActiveCell.Row
xlApp.ActiveCell.Row = 1→xlApp.ActiveCell.Row = 1
R = 0→R = 1
> C = xlApp.ActiveCell.Column
xlApp.ActiveCell.Column= 1→xlApp.ActiveCell.Column = 1
C = 0→C = 1
ここのR , Cの値はエクセルが開いていなくても0から実行して1になります。
>
> Label1.Caption = R & " " & C
C,Rとも実行前、後とも1
> xlApp.Visible = True
xlApp.Visible = false→True truet→rue
>
> ' Excel のセルに値を代入します。
> xlSheet.Cells(R, C).Value = "12" '制作中のために簡単な値
R , Cとも実行前、後とも1
Set xlApp = New Excel.Applicationの値が<オブジェクト変数が設定されていません。
とR = xlApp.ActiveCell.RowとC = xlApp.ActiveCell.Column
の取得情報がどこのセルを選択しても、またエクセルが立ち上がっていなくても「 1 」
というのが原因?
自動で新たなBookを開くからでしょうか?