「etTomioのトホホ日記」 2010年4月
◆2010/4/30 |
日記を見たら4/23にコードを書いていますね。これ、昨日新幹線撮影の帰りに書店で書き写したコードから以下のように書き換えています。これでDドライブでなくても、EでもXドライブでも同じフォルダ内にあれば開きます。 Sub 確定メール読み込み() ' 確定メール読み込み Macro ' マクロ記録日 : 2010/4/23 ユーザー名 : ○○ ' Dim d As String Dim n As String d = Worksheets("確定コピー").Cells(2, 11) n = "△△" & d & ".xls" 'ChDir "D:\確定一覧\確定メール" 'Workbooks.Open Filename:="D:\確定一覧\確定メール\" & n '2010/4/29 更新 Workbooks.Open Filename:=ThisWorkbook.path & "\確定メール\" & n Windows.Arrange ArrangeStyle:=xlVertical ActiveWindow.LargeScroll Down:=-2 Range("A1:H250").Select Selection.Copy Windows("□□配車.xls").Activate Range("A1").Select ActiveSheet.Paste Application.CutCopyMode = False Windows(n).Activate ActiveWindow.Close ActiveWindow.WindowState = xlMaximized Range("I5").Select End Sub |
◆2010/4/30 |
プログラムを書く人が10人いたら、10人それぞれが違うプログラムを作ると思います。プロから見れば、これは綺麗なプログラム、これは回りくどいプログラムとか分かるのでしょうが、私は独学ですので、綺麗ではありません。でも結果は同じモノを出さなくちゃなりませんし、今みたいにパソコンの性能が上がると綺麗じゃなくても負荷はかかりません。 もっとも先日みたいに無限ループに入って、Excel自体がハングしては駄目です。 昨日も今日も新幹線撮影の合間は、関数とVBAの本ばかり調べていました。 |
◆2010/4/30 |
プログラムはほぼ完了しました。また昼から焼酎飲みながらの作業です。90パーセント出来たかな。あとは休暇が終わってから、実際に試験運用しながらバグを潰します。 また 昨年の2月泣くような思いで作った関数をひとつひとつのセルに組み込んでいます。ここの「併合読込」というのは、Bookに作ったシート名です。 =IF(IF(IF(COUNTIF(併合読込!$E$1:$E$70,$AN9)=1,VLOOKUP($AN9,併合読込!$E$1:$Q$70,6,FALSE),"")="",0,VLOOKUP($AN9,併合読込!$E$1:$Q$70,6,FALSE))+IF(IF(COUNTIF(併合読込!$E$71:$E$120,$AN9)=1,VLOOKUP($AN9,併合読込!$E$71:$Q$120,6,FALSE),"")="",0,VLOOKUP($AN9,併合読込!$E$71:$Q$120,6,FALSE))=0,"",IF(IF(COUNTIF(併合読込!$E$1:$E$70,$AN9)=1,VLOOKUP($AN9,併合読込!$E$1:$Q$70,6,FALSE),"")="",0,VLOOKUP($AN9,併合読込!$E$1:$Q$70,6,FALSE))+IF(IF(COUNTIF(併合読込!$E$71:$E$120,$AN9)=1,VLOOKUP($AN9,併合読込!$E$71:$Q$120,6,FALSE),"")="",0,VLOOKUP($AN9,併合読込!$E$71:$Q$120,6,FALSE))) |
◆2010/4/30 |
こちらは今日撮った写真。11時過ぎに俄雨が降り出したので帰宅しました。![]() ![]() |
◆2010/4/30 |
昨日撮った写真から。![]() ![]() |
◆2010/4/30 |
1週間前から書いている仕事のExcelのプログラムを暇があれば書いています。私のファイルは、他のファイルを開いてコピーする場合、自動記録マクロだとフルパスが書き込まれます。普段はDドライブに置いていますが、ウチに持って帰った時もDドライブに入れなくてはなりませんし、他のPCのCドライブとかに置くとエラーとなり開けません。パスを書き換えてやらなくてはならず、不便でもっと汎用的にならないかなと思っていました。 昨日、新幹線撮影の帰りに書店に寄ってExcel VBAの本を開いていたら、ありました。しかし1冊で3,000円近くもするし、財布に紙がありましたので、そのコードを写し取りました。 Workbooks.Open Filename:=ThisWorkbook.path & "Sample.xls" 早速ウチで自分のファイルをわざとEドライブに入れて上のコードに自分のファイル名を入れたら開きました。他のいくつかのファイルもコードを書き換えました。 さらに10年ぐらい前に書いたコード 'ユーザー定義関数 Function 当社出荷(先方納期) If Weekday(先方納期) = 1 Then 当社出荷 = "" ElseIf Weekday(先方納期) = 7 Then 当社出荷 = "" ElseIf Weekday(先方納期) = 2 Then 当社出荷 = 先方納期 - 3 Else 当社出荷 = 先方納期 - 1 End If End Function これで先方納期を入れたら当社の出荷日が1日前で出ますし、月曜日なら金曜日が表示されます。 |
◆2010/4/28 |
先週末から書き始めたExcelでのプログラム。今日は親会社がすでに連休に入りましたので、一日の大半をプログラム作りに専念していました。 先週末、ほぼ50パーセント出来たと書きましたので、残りの50パーセント。関数を入れて実行したら、ハハ、無限ループに入ったらしく、Excelがハングしました。何回か書き直したけど、ハング。 やれやれ、関数のどれかが無理な負荷をかけてるな。ひとつひとつ検証。以前も使ったcountif関数がどうやら元凶のようです。こいつを削除したら、Excelは動きました。さて関数を全部消して、他の方法を考えることにしました。結果、あまり好きではないiserror関数を使いました。今度はハングしません。 それと開くとリンクを設定するかのメッセージが出ます。今までのファイルから2枚シートをコピーして使っているので出るのだなと、ひとつひとつのセルをしらみつぶしに探して、ようやくリンクを解除させました。 19時現在、正常に動きました。連休明けに試験運用を何日かして、問題なければ本格運用するつもりです。 |
◆2010/4/25 |
今朝は雲一つない好天気。こんな晴天何日ぶりだろう。これは当然行かなくちゃなりません。昨日下松と周南の境へ行ったのに午前中は全くの曇りで1枚も撮れず。 今日はそのリベンジ。写真はレールスターと早朝の500系V編成です。 ![]() ![]() |
◆2010/4/24 |
今日も新幹線詣でに久しぶりに下松市と周南市の境に行きましたが、午前中は曇りで全く撮れませんでした。下は2枚とも午後の半逆光での撮影です。![]() ![]() |
◆2010/4/23 |
昨日のプログラムの続きです。USBメモリで持ち帰り、焼酎を飲みながらのプログラミングです。親会社から確定のメールが入りますので、それを取り込むためのコードを書きました。セルJ2に日付を打ち込んで読み込みます。下のコードのCells(2,
11)がJ2でここに日付を打ち込みます。。 Sub 確定メール読み込み() ' 確定メール読み込み Macro ' マクロ記録日 : 2010/4/23 ユーザー名 : ○○ ' Dim d As String Dim n As String d = Worksheets("確定コピー").Cells(2, 11) n = "△△" & d & ".xls" ChDir "D:\確定一覧\確定メール" Workbooks.Open Filename:="D:\確定一覧\確定メール\" & n Windows.Arrange ArrangeStyle:=xlVertical ActiveWindow.LargeScroll Down:=-2 Range("A1:H250").Select Selection.Copy Windows("□□配車.xls").Activate Range("A1").Select ActiveSheet.Paste Application.CutCopyMode = False Windows(n).Activate ActiveWindow.Close ActiveWindow.WindowState = xlMaximized Range("I5").Select End Sub |
◆2010/4/22 |
プログラムを書くのが好き。おそらく今のも完成させるでしょう。最終的にはマクロで完全自動にしたいと思っています。 10年ぐらい前に趣味でVBでプログラムを書きました。完全な独学です。たった数行のコードが書けないで2日ぐらい悩んだこともあります。オレの頭じゃ無理だ。風呂に入っていたら ふと閃きまして、すぐに風呂から上がってコードを書いたら、動いた。その瞬間の自己満足ですね。 私はカメラもパソコンもネクラのオモチャだと10年以上前から言っています。 |
◆2010/4/22 |
いやあよく降ります。それに寒い。3月4月とまともに晴天が続いたことないんじゃないですか。 私の方は、一昨日夕方から また仕事の合間とか、早朝、昼休みにExelでプログラム作りを始めました。以前、嘱託の方に作って頂いたのを見たら、シートが10ぐらいあって、また別のBookからリンクされていたりで、訳が分かりません。複雑すぎて解析しようという気持ちになれず、もっと簡単に作れないかと・・・ やたら関数入れなくても、Excelにはフィルタ機能とか集計機能があります。夕方にはマクロも組んでほぼ50パーセント作りました。後は配布用のシートに自動で数値を取り込む機能を入れたいと思いますが、これはかなり複雑な関数を組むようになると思います。 |
◆2010/4/20 |
今朝、いつものように暗いうちから出社。ただ今朝は家庭ゴミを積み込んでいました。途中、コンビニに寄って煙草を買ったとき、ゴミを降ろし忘れていたことに気付き、また戻って回収箱に入れました。やれやれ年撮ると・・・ |
◆2010/4/20 |
この前の土曜日に500系V編成を100mmで画面いっぱいに撮りましたが。日曜日、今度はフレームからあふれてもいいと、200mmで撮りました。ただ、薄曇り&逆光です。 これを2560×1600なんて超高価なモニタ用の壁紙にしたら結構アクセスがきています。 ![]() |
◆2010/4/20 |
これは私のよく行く、あるサイトの掲示板への書き込みです。 今晩は。 牧ノ原1/3ですか。紀州梅も駄目みたいですし、 ヨーロッパは火山爆発で今後農作物に凄い影響受けるんでしょうね。 脳天気に新幹線撮っててもいいのやら。 でも私らにどうしようもできませんし、 飽食の時代、食べ物を粗末にしないってことでしょうか。 写真はV同様、前方に架線ビームの影、山の影がありましたので、 トリミング前提で撮った ○○さんの言われるホクロのあるN10です。 トリミングしていますので、壁紙前提で撮っているとはいえ 2560×1600なんて超高価なモニタ用の壁紙は作れません。 ![]() |
◆2010/4/15 |
David Bowie - Boys Keep Swinging |
◆2010/4/15 |
もう春の半ばでしょう。外は木枯らしが吹いてるよ。雨は多いし、寒いし、本当に地球は温暖化してるのでしょうか。 WARSZAWA Last Night of low & heroes tour 12/12/78 Bowie |
◆2010/4/14 |
David Bowie "Five Years" David Bowie - Five Years |
◆2010/4/14 |
David Bowie / Heroes 1978 David Bowie 'Heroes' Tokyo 1978 |
◆2010/4/14 |
今年はとうとうレンズを桜の花に向けることは一度もありませんでした。HPに「花暦」なんて設けてるけど昨年の秋から更新していません。昔は毎週更新していましたが、今は花にレンズを向けるという興味がわきません。ま、そのうち更新しますので・・・ |
◆2010/4/14 |
QUEEN , DAVID BOWIE,ANNIE LENNOX "UNDER PRESSURE" *new*!! |
◆2010/4/14 |
David Bowie - Farewell Speech & Rock 'N' Roll Suicide (Live) Rock'n roll Suicide - Live in Japan |
◆2010/4/12 |
壁に向かって立ちすくみこの歌を聴く。 David Bowie - My Death (Live) |
◆2010/4/12 |
昨日田お越しを済ませて玖珂へ撮りに行った、九州直通新幹線S1の試験走行の流し撮りです。![]() |
◆2010/4/12 |
春になって嫌になるほどよく雨が降ります。百姓仕事は土日しかできない自分には、3月に1度も田お越しをしなかったのは今年が初めてです。 先週4/3に無理矢理、家の近くの田んぼを起こしました。雨が降って間もないのに、こんなことしたのは自分だけでした。 一昨日の土曜日はオフクロの兄の葬儀でした。 そして昨日は朝6時から沖の田んぼを起こしました。小雨がぱらつきましたが、やっておいてよかった。それから今日にかけてずっと雨です。 |