
はじめまして。
[環境]
Windows2000
VB6.0
Excel2000
[主な参照設定]
Microsoft Excel 9.0 Object Library
Microsoft Activex Data Object 2.1 Library
Microsoft Office 10.0 Object Library
Microsoft Access 9.0 Object Library
Microsoft ADO Ext. 2.8 for DDL and Security
[処理ルーチン]
Access2000からデータを取得→固定FormatのExcelを起動→Excelにデータを書出し
[質問]
・VB6.0からExcelにデータを書き出しているのですが、セル(書式設定の動作)について質問させて下さい。
単一のセルに対して、データの書出しは問題ないのですが、結合されているセル(B20:G20)に対して文字を挿入しようとするとうまく反映できませんでした。
で、「セルの書式設定→配置→セルの結合を解除」文字を挿入「セルの書式設定→配置→セルを再度結合」って処理を考えていたのですが、うまく動作しません。
もっと簡単な解決方法があるのでしょうか?
※よろしければ簡単なソースで例て教えて頂けないでしょうか?
No.2ベストアンサー
- 回答日時:
・Range("B20:G20").Cells(1,1).Value = Var
・Range("B20:G20")(1).Value = Var
結合セルの場合は、一番最初のセル、この例の場合はB20セルに対して代入を
行います。Range オブジェクトの Cells プロパティーを使います。
Range("B20:G20").Cells(1,2) なら C20 セルの Range オブジェクトが参照
されます。
Rangeオブジェクト.Cells([RowIndex],[ColumnIndex]).Value = Var
No.1
- 回答日時:
結合セルの座標は「左上のセル位置」を指定します。
B20:G20 なら B20 になります。
Range("B20") = "A"
または、結合セルに対応したプロパティを使用する。
Range("C20").MergeArea = "B"
無事解決致しました。
というか私がDDEを使用して値の代入を行っていた為に
起こった不具合だと自己解決致しました。
お騒がせしてすみません。
[旧ソース]
intChan1 = DDEInitiate("Excel", "System") ' リンクを設定します。
Shell "" & EXCEL_PATH & " " & EXCEL_NAME & "", 1
If Err Then Exit Sub
intChan1 = DDEInitiate("Excel", "System")
'End If
strTopics = DDERequest(intChan1, "Selection")
strSheetName = Left(strTopics, InStr(1, strTopics, "!") - 1)
DDETerminate intChan1
intChan1 = DDEInitiate("Excel", strSheetName)
DDEPoke intChan1, "R20C2", "" & strMoj(10) & ""
DDETerminateAll
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
[新ソース]
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open("C:\DDE\data.xls")
Set xlSheet = xlBook.Worksheets(1)
xlApp.Visible = True 'Excelを表示
xlSheet.Cells(20, 2).Value = "test"
xlApp.Quit
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel UserForm の表示位置
-
【Excel VBA】マクロで書き込ん...
-
VBA にて、条件付き書式で背景...
-
Excelで空白セル直前のセルデー...
-
【VBA】【ユーザーフォーム_Lis...
-
Excel VBA IF文がうまく動作し...
-
DataGridViewでグリッド内に線...
-
EXCEL VBA 文中の書式ごと複写...
-
VBAでの背景色分岐後の結合セル...
-
ListBoxを選択したデータ編集② ...
-
VBAマクロ実行時エラーの修正に...
-
エクセルのカーソルを非表示に...
-
昨日、質問した件『VBA にて、...
-
特定の色のついたセルを削除
-
マウスオーバーでセル内の背景...
-
Excel 範囲指定スクショについ...
-
DataGridViewのフォーカス遷移...
-
CSVファイルを読み込んだらセル...
-
Excel VBA 同じ処理を複数回行...
-
エクセルVBA ダブルクリックし...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel UserForm の表示位置
-
VBAマクロ実行時エラーの修正に...
-
特定の色のついたセルを削除
-
Excelで空白セル直前のセルデー...
-
エクセルVBA 配列からセルに「...
-
【VBA】【ユーザーフォーム_Lis...
-
【VBA】写真の貼り付けコードが...
-
データグリッドビューの結合セ...
-
複数指定セルの可視セルのみを...
-
エクセル、マクロで番号を読込...
-
CellEnterイベント仕様について
-
C# DataGridViewで複数選択した...
-
【ExcelVBA】値を変更しながら...
-
EXCEL VBA 文中の書式ごと複写...
-
マクロ初心者です。 マクロで範...
-
【Excel VBA】一番右端セルまで...
-
【Excel VBA】マクロで書き込ん...
-
VBA:日付を配列に入れ別セルに...
-
DataGridViewでグリッド内に線...
-
DataGridViewのフォーカス遷移...
おすすめ情報