advanced help
per page, with , order by , clip by
Results of 0 - 1 of about 0 (0.000 sec.)
[[20020507201512]]
@digest: a13b393af1fdf54c571055763d60a215
@id: 6
@mdate: 2003-04-29T06:41:43Z
@size: 3099
@type: text/plain
#keywords: 010409 (15241), 修整 (8668), 付各 (6766), 製の (3054), 後同 (2698), 複製 (2562), 数計 (2327), 御存 (2324), ramrun (2008), 定長 (1836), 個作 (1632), 付列 (1596), ロ作 (1176), 厄介 (1163), 行ボ (1141), sample (968), activecell (915), 手伝 (907), 置換 (728), 日数 (680), マク (638), function (622), クロ (573), 日付 (536), 始日 (519), 番上 (491), 各セ (491), 失敗 (480), 区切 (474), メニ (466), ニュ (418), 存知 (384)
『010409を2001/4/9に列全部(日付各セル異)置換法』(ふらいと)
開始日から終了日までの2列の日付の日数計算をしたいのですが、元データが010409のようになっています。このままだと関数DATEDIFでは日数計算してくれないみたいで、2001/4/9のように変換したいのですが、方法を御存知ありませんでしょうか。 ---- やっぱりたくさんあるんですよね、手では修整したくないくらい? マクロを作って置換するのがいいかもしれません。 じゃあマクロを作ってくださいと言われると...(汗)。 (ramrun) ---- Sub macro() Dim n As Integer Dim x, y, z As Variant n = 0 Do While (1) x = ActiveCell.Value If x = Empty Then Exit Do For n = 1 To 5 Step 2 y = sample(x, n) If y = False Then Exit For If n = 1 Then If y > 50 Then z = "19" & y & "/" Else z = "20" & y & "/" End If ElseIf n = 3 Then z = z & y & "/" Else z = z & y End If Next n ActiveCell.Value = z ActiveCell.Offset(1, 0).Select Loop End Sub Function sample(ByVal x As String, ByVal n As String) As Variant If Len(x) > 6 Then sample = False Exit Function End If sample = Mid(x, n, 2) End Function ---- マクロ作ってみました。 使い方は〜 の前に、置換したいファイルをコピーして複製を1個作ってください。 失敗すると大変なので(汗)。 その複製のファイルを使ってマクロをやってみましょう。 やり方は、まず↑のマクロ(プログラム)をコピーしてください。 複製のファイルを開いて、ツール>マクロ>Visual Basic Editor その画面のメニューの挿入>標準モジュール とすると、 ウインドウが開きましたね? そこにさっきコピーしたマクロを貼り付けてください。 そうしたらエクセルのシートに戻ってもらって、日付列の一番上の日付が入ったセルを 選択してください。 そのあとメニューからツール>マクロ>マクロ>macro を選んで実行ボタンです。 (ramrun) ---- ramrunさん久しぶりです、また手伝ってください。 少し厄介ですが、関数でもできます。 例えばセルA1に『010409』が入っているとき =datevalue("20" & MID(A1,1,2) & "/" & MID(A1,3,2) & "/" & MID(A1,5,2)) で、日付に変換できます。 ただし年月日がそれぞれきちんと2桁であることが必要です。 (kazu) ---- ramrunさん、感謝感激です。本当にありがとうございました!kazuさんありがとうございました!超急ぎで、6万件あったのでテンパリまくりで、あがいた末、お二人から御回答をいただく前に私もやり方を発見しました。ramrunさんには大変お手数をおかけしたので自分のやり方をここに書くことを迷ったのですが、今後同じような内容でお困りの方のお役に立てればと考えて以下に書きます。 [データ]の[区切り位置]という項目を使って、[スペースによって----固定長]を選び[次へ]いき、列のデータ形式を[日付]にして[完了]で、できました。(ふらいと) ---- お〜 本当ですね。 こんな方法があるなんて驚きです。 区切らなくていいんですね。 勉強になります。 (ramrun) ↑のマクロもちょっと修整しときます。 kazuさんへ お元気そう?でなによりです。 ...
http://www.excel.studio-kazu.jp/wiki/kazuwiki/200205/20020507201512.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 96860 documents and 607995 words.

訪問者:カウンタValid HTML 4.01 Transitional