パソコン仕事5倍塾
35,000人を指導した東大卒・元日本IBM社内講師が直伝
MENU
受講生さんの投稿
(投稿ID: 802)
小川 慶一さんのコメント
(コメントID: 1704)
(コメントID: 1710)
Sub hoge1() Columns("B:C").ColumnWidth = 14 Columns("B:C").NumberFormatLocal = "yyyy/m/d h:mm;@" Range("A1").Value = 0 Range("A2").Value = 1 Range("A3").Value = 2 Range("B1").Formula = "=A1" Range("B2").Formula = "=A2" Range("B3").Formula = "=A3" Dim d As Date Dim c As Long For c = 1 To 3 Range("A" & c).Value = c - 1 Range("B" & c).Formula = "=A" & c With Range("C" & c) .Value = DateAdd("d", c - 1, d) Debug.Print c & "行目" Debug.Print vbTab & "excel value: " & .Offset(, -1).Value Debug.Print vbTab & "excel text : " & .Offset(, -1).Text Debug.Print vbTab & "dateadd : " & DateAdd("d", c - 1, d) Debug.Print vbTab & "vba .value : " & .Value Debug.Print vbTab & "vba .text : " & .Text Debug.Print vbNewLine End With Next For c = 60 To 62 Range("A" & c).Value = c - 1 Range("B" & c).Formula = "=A" & c With Range("C" & c) .Value = DateAdd("d", c - 1, d) Debug.Print c & "行目" Debug.Print vbTab & "excel value: " & .Offset(, -1).Value Debug.Print vbTab & "excel text : " & .Offset(, -1).Text Debug.Print vbTab & "dateadd : " & DateAdd("d", c - 1, d) Debug.Print vbTab & "vba .value : " & .Value Debug.Print vbTab & "vba .text : " & .Text Debug.Print vbNewLine End With Next End Sub
Captcha:
たった1ヶ月で人生が劇的に変わりました
佐藤信さん
役員クラスの方から高い評価を受けるようになりました。
佐賀県 - 岩本徹さん
今までまったく知らなかったショートカットキーを使いまくっています。
東京都 - 鷹觜慶さん
年齢60才間近、営業で外回りの時間が多い私でも退社時間が1-2時間程度早くなりました。
東京都 - 宗内隆明さん
受講前もすでにパソコン得意でしたが、そんな私でも受講して本当に良かったと思えた講座です。
東京都 - 佐伯とも子さん
ここまで包括的に仕事に役立つ深い学びを受けれた講座は初めてでした
東京都 - 飯田倫子さん
2024年11月20日 21:28
2024年10月27日 08:02
2024年10月26日 04:43
2024年10月22日 04:45
2024年10月21日 04:48
2024年11月20日 21:41
2024年11月14日 17:04
2024年11月13日 18:12
2024年11月13日 18:11
2022年02月24日 10:59
表示できる投稿はありません。
この学習サイトの教材制作、サポート、システム開発をすべてやっています。
2022年02月02日 00:00
2022年02月02日 03:00
2022年02月02日 06:00
2022年02月02日 09:00
2022年02月02日 12:00
2024年10月21日 17:30
2024年10月18日 17:00
2024年10月17日 17:30
2024年10月18日 16:45
2024年10月17日 07:30
2024年11月17日 09:51
2024年11月15日 16:41
2024年11月15日 13:07
2024年11月15日 13:05
2024年10月12日 08:25
受講生さんの投稿
(投稿ID: 802)
日付型の変数の初期値、確認しました。
セルへの出力の場合、違った結果が表示されるのですね。
1900/1/1より前の日付だからでしょうか?
小川 慶一さんのコメント
(コメントID: 1704)
「変数には初期値がある」というのがこの動画で言いたかったことです。
ご質問の件の背景は、エクセルシートで0を日付解釈したときどうなるかという話と日付型変数の初期値をどう解釈すべきなのかという話とがごちゃまぜになっていて、すっきりした説明をするのは大変です。
一方、日付型の変数を初期値のまま運用することは実務上まずないです。
なのでできれば説明に手間をかけたくないし、かけても小さな知識欲は満たされるけどそれ以上のメリットは別になさそうなので、ここでは、深く扱わずにスルーしたいです。
小川 慶一さんのコメント
(コメントID: 1710)
エクセルとVBAでは、日付の計算をするときの1900年のうるう年の処理に違いがあります。
以下のサンプルコードが参考になるかと。
あと、匿名さんならご存知と思いますが、エクセルもVBAも、日付の処理は内部的には小数で行っています。
整数部分が基準日からの日数1日分を表します。
これで、あとは匿名さんならご理解いただけるかと。