アプリ版:「スタンプのみでお礼する」機能のリリースについて

とうとう朝になってしまいました。
もう丸2日間も悩んでいます。
どなたか解決方法をご存知の方、よろしくお願いいたします。

AccessVBA内のモジュールからExcelファイルを開いて、そこへデータを出力するという処理は動きます。
そこで、出力する前に、Excelのセルの書式設定を列毎にしようとしていますが、どうしても上手くいきません。

下記のような感じでは、使えないのでしょうか?

Set xls = GetObject("c:AAA\TEST.xls")
xls.Application.Windows(1).Visible = True
xls.Application.worksheets("sheet1").Activate
xls.Application.worksheets("sheet1").RANGE("A:A").Selection.NumberFormatLocal = "\#,##0;\-#,##0"

なにか良い方法がありましたら教えてください!!
よろしくお願い致します。

A 回答 (3件)

No1さんの回答の


xlApp.cells(1, 1).NumberFormat = "$#,##0;$-#,##0"

xlApp.Columns("A:A").NumberFormatLocal = "\#,##0;\-#,##0"
したらどうでしょ
    • good
    • 0
この回答へのお礼

上手くいきました。
ありがとうございました。m(_ _)m

お礼日時:2006/07/10 12:14

逆にACCESS知らないんですけどEXCEL党の僕からみると明らかにSelectionが要らないです。

    • good
    • 0
この回答へのお礼

回答ありがとうございました。m(__)m
ちょっと試してみましたが、
今回の件では、
Selectionはあまり問題ではさそうでした。

お礼日時:2006/07/10 12:16

Excel は操作したこともないプログラマですが、


なるほど、失敗しますね!

Private Sub cmdImport_Click()
  Dim xlApp As Object
  Dim xlBook As Object
  
  Set xlApp = CreateObject("Excel.Application")
  Set xlBook = xlApp.workbooks.Open("D:\Sales2005\営業報告書.xls")
  xlApp.Visible = True
  xlApp.cells(1, 1) = 123400
  xlApp.cells(1, 1).NumberFormat = "$#,##0;$-#,##0"
End Sub

これで、\123,400 と表示されました。
ビックリしたーという感じです!

この回答への補足

回答ありがとうございます。m(_ _)m

参考書などにも、cellsの例は載っているので、多分cells だと上手くいくと思います。
ここがRangeでも上手くいくと良いのですが・・・。

後ほど、上記の文を応用して、試してみようと思います。
上手くいくといいです・・・。

補足日時:2006/07/09 20:04
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A