tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルエクセルのユーザー定義の取得方法
記事No9693
投稿日: 2009/12/03(Thu) 23:01
投稿者たろー
VBを初めて3ヶ月の初心者です。
エクセルのデータで、セルがユーザー定義「[h]:mm」となっているデータを取得する方法をどのように記述すれば良いのか分かりません。
どうかご教授下さい。
よろしくお願い致します。



[環境]
・VB2008
・EXCEL2002 SP3

[ソースコード]
            Dim xlApp As New Excel.Application
            Dim xlBooks As Excel.Workbooks = xlApp.Workbooks
            Dim xlBook As Excel.Workbook = xlBooks.Open(xlFilePath)
            Dim xlSheets As Excel.Sheets = xlBook.Worksheets
            Dim xlSheet As Excel.Worksheet = xlSheets.Item(sXlsSheetNm)

            Dim sTime As String '時間情報

            '時間読込
            sTime  = xlSheet.Cells(1,1).Value

[例]
 『7:45』のエクセルデータを取得すると、『0.322916666666667』となってしまう。
      

[ツリー表示へ]
タイトルRe: エクセルのユーザー定義の取得方法
記事No9694
投稿日: 2009/12/03(Thu) 23:18
投稿者魔界の仮面弁士
.Value や .Value2 だと数値になってしまいますが、
.Text であれば、表示形式のまま取得できます。

[ツリー表示へ]
タイトルRe^2: エクセルのユーザー定義の取得方法
記事No9695
投稿日: 2009/12/03(Thu) 23:31
投稿者たろー
> .Value や .Value2 だと数値になってしまいますが、
> .Text であれば、表示形式のまま取得できます。

魔界の仮面弁士さん、ありがとうございます。

sTime  = xlSheet.Cells(1,1).Valueを
sTime  = xlSheet.Cells(1,1).Textに変更しデータ取得できました。

Valueの使い方が間違っていることに気が付きませんでした。
ご指導の程、とても感謝しております。
ありがとうございました。

[ツリー表示へ]