投稿時間:2006/06/03(Sat) 23:04 投稿者名:べた
Eメール:
URL :
タイトル:VBからExcelへの表示で、ゼロから始まる文字列の扱い
VBからoo4o接続でデータベースからデータを抽出しています。 抽出したデータをExcelに送り表示しようとしています。
ここで、データの一部にゼロから始まる値があり、そのまま、 Execlで表示するとゼロか取り除かれた表示されます。 ゼロを取り除かれずに表示したいのですが、どうすれば良い のでしょうか。
抽出したデータが、「000001」とすると、Excelで表示すると「1」 抽出したデータが、「099999」とすると、Excelで表示すると「99999」 となる。 これを、「000001」、「099999」としたいのです。
書式を文字列にしてみたのですが、変わりませんでした。 xlSheet.Cells.NumberFormat = "@"
以下にコードを載せます。
Private Sub Command1_Click() Dim objSess As Object Dim objDb As Object Dim objDs As Object Dim objCol As Object Dim str_SQL As String Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.Worksheet Dim I As Integer Dim j As Integer Dim RowCnt As Integer
On Error Resume Next Set objSess = 〜 Set objDb = 〜 str_SQL = "" str_SQL = "SELECT 〜 Set objDs = objDb.DbCreateDynaset(str_SQL, 12&)
Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Add Set xlSheet = xlBook.Worksheets.Add
xlSheet.Cells(1, 1) = "番号" xlSheet.Cells(1, 2) = "名前" xlSheet.Cells(1, 3) = "年月日" I = 2 Do Until objDs.EOF For j = 1 To 3 xlSheet.Cells(I, j) = objDs(j - 1).Value Next j I = I + 1 If I > 11 Then Exit Do End If objDs.DbMoveNext Loop xlApp.Visible = True RowCnt = I - 1 xlSheet.Range(xlSheet.Cells(1, 1), xlSheet.Cells(RowCnt, 3)).Borders.LineStyle = xlContinuous '実線 xlSheet.Range(xlSheet.Cells(1, 1), xlSheet.Cells(RowCnt, 3)).Borders (xlEdgeTop).LineStyle = xlGray75 xlSheet.Range(xlSheet.Cells(1, 1), xlSheet.Cells(RowCnt, 3)).Borders (xlEdgeLeft).LineStyle = xlGray75 xlSheet.Range(xlSheet.Cells(1, 1), xlSheet.Cells(RowCnt, 3)).Borders (xlEdgeRight).LineStyle = xlGray75 xlSheet.Range(xlSheet.Cells(RowCnt, 1), xlSheet.Cells(RowCnt, 3)).Borders (xlEdgeBottom).LineStyle = xlGray75 xlSheet.Range(xlSheet.Cells(1, 1), xlSheet.Cells(1, 3)).Borders(xlEdgeBottom).LineStyle = xlDouble
xlSheet.Cells.NumberFormat = "@"
xlSheet.Cells.VerticalAlignment = xlVAlignCenter xlSheet.Range("A:A").HorizontalAlignment = xlLeft xlSheet.Range("B:B").HorizontalAlignment = xlVAlignCenter xlSheet.Range("C:C").HorizontalAlignment = xlRight xlSheet.Cells.Interior.Color = RGB(0, 255, 0)
On Error GoTo 0 xlApp.Quit Set xlSheet = Nothing Set xlBook = Nothing Set xlApp = Nothing
Set objDs = Nothing Set objDb = Nothing Set objSess = Nothing Set objCol = Nothing End Sub
|