1 名前:デフォルトの名無しさん mailto:sage [2010/01/06(水) 12:34:58 ] 過去スレ 01 pc11.2ch.net/test/read.cgi/tech/1054356121/ 02 pc11.2ch.net/test/read.cgi/tech/1168308855/ 03 pc11.2ch.net/test/read.cgi/tech/1180192018/ 04 pc11.2ch.net/test/read.cgi/tech/1189814602/ 05 pc11.2ch.net/test/read.cgi/tech/1197448064/ 06 pc11.2ch.net/test/read.cgi/tech/1205231499/ 07 pc11.2ch.net/test/read.cgi/tech/1212587819/ 08 pc11.2ch.net/test/read.cgi/tech/1219673793/ 09 pc11.2ch.net/test/read.cgi/tech/1228372971/ 10 pc12.2ch.net/test/read.cgi/tech/1235332603/ 11 pc12.2ch.net/test/read.cgi/tech/1241885130/ 12 pc12.2ch.net/test/read.cgi/tech/1247566074/ 13 pc12.2ch.net/test/read.cgi/tech/1254281104/
685 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 18:14:19 ] >>682 ホントだ。ローカルのヘルプは抜けてるのがある。 オンラインヘルプなら全部出るみたいだけど。
686 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 18:26:38 ] >>682 あと"p"とか"ccc"とか"ooo"とか"ww"とかもあるみたいね。 Format(1,"ww")が53、Format(1,"www")が531になるがなんのこっちゃ。
687 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 18:47:18 ] "p"じゃなくて"q"だったわ。 "ccc"も"c"ね。 Format$(シリアル値,"yyyy/mm/dd")とするところを Format$(シリアル値,"c")としても同じみたい。 >>685 オンラインのヘルプどこ? さっきから探してるんだが見つからん。 MSDNかな?
688 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 18:54:35 ] cはcountryのcだと予想して地域オプションをいじくってみたら、案の定 Format$(シリアル値,"c")は必ずしもFormat$(シリアル値,"yyyy/mm/dd")と 同じじゃなかったわ。
689 名前:662 mailto:sage [2010/03/19(金) 19:51:07 ] >>664-665 回答ありがとうです。本当にたすかりました。 面倒なんで「(どっかのセルに10と書いて)コピー、形式を選択して貼り付け、乗算」をマクロ記録させてそれでやり過ごしました。
690 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 20:03:49 ] Formatの奴うざいよ? Valueの奴と同じちゃうんかと思われるレベル。
691 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 20:15:38 ] うざくてすまんね。 Value関連は考えすぎだな。 629と633と637は俺だけどな。
692 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 20:21:00 ] というわけど、今後は>>690 のハイレベルな回答を期待しましょうねw
693 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 20:38:21 ] ヘルプ見ろでFAだろ。 質問者はまだ見れてないようだが。
694 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 20:42:05 ] めんどくさいけど探してやった。 ほれ。 msdn.microsoft.com/ja-jp/library/59bz1f0h (VS.80).aspx
695 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 20:47:20 ] それVBAも一緒なの?
696 名前:デフォルトの名無しさん [2010/03/19(金) 20:51:40 ] ブイバのことは俺に任せろ!
697 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 21:04:53 ] >>693 クソ生意気な奴だなぁ。 ヘルプくらいは真っ先に見てるさ。 俺の見れるヘルプにはcやwwwは見れないんだよ。 お前がそういうなら探せばどっかにあるんだろうけどね。 Formatで検索して出てくる下には書いてない。 Format 関数 ヘルプ > 関数 > D-G Format 関数の使用例 数値表示書式指定文字 (Format 関数) 文字列表示書式指定文字 (Format 関数) 数値を表すその他の書式 (Format 関数) もうどうでもいいけどな。
698 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 21:09:18 ] >>694 お、ありがとう。 そこにあったか。 どうでもいいと書いたがこれから見るわ。
699 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 21:14:54 ] >>693 =694の俺なんですが・・・
700 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 21:18:56 ] なんというツンデレ!! おまいら何やってんだよwww
701 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 21:25:30 ] >>699 ふーん? 結局お前もまともにヘルプ見てなかったと言うことかw >>694 もリンク先見たけど、cやwwwは載ってないわ。 ExcelヘルプでFormatで検索しても出てこなかったが、表示書式指定文字で検索したら出てきたよ。
702 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 22:21:05 ] >>701 日付の書式のヘルプ初めて見たよ。 cとかooooとかwwとか今まで知らんかった。
703 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 22:35:11 ] >>702 同じく。 しかしヘルプでFormatじゃなくFormat関数と最後まで打てば日付関連の書式は出てきたな。 手抜きはいかんな。 またうざいとか言われるからこのへんにしとくよ。
704 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 22:53:23 ] >>703 「Format 日付」でも出てくるよ。 間にスペース入れればAnd検索だな。
705 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 23:16:10 ] >>704 トンクス Formatだけでも2ページめにあったね。 ヘルプはカーソル当ててF1しか普段使わないから、オンラインヘルプの使い方知らなかった。
706 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 02:51:23 ] いつからこのスレは自分が発見したことのメモ帳になったんだ
707 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 02:53:16 ] >>701 で、結局そのヘルプのありかをこのスレにフィードバックするつもりは無いのか。 やっぱValueの奴とレベル一緒だわお前。
708 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 03:37:26 ] >>672 でちゃんと使い方が間違ってると教えてもらってるのに、何なのこいつ。
709 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 07:56:45 ] >>672 >>669 だが、夜会合ですぐレス書かなくてすまんな。 ヘルプは>>671 や>>704 のおかげで読めたよ。 俺も実は探せてなかったもんでね。 ヘルプ読めと言いながらVBAのヘルプじゃないものを教えた人もいたみたいだが。
710 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 08:02:40 ] まちがった >>701 や>>704 のおかげな
711 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 08:09:44 ] >>707 ヘルプのありかは>>701 はフィードバックしてるんじゃね? 表示書式指定文字で検索って書いてあるし。 Excelヘルプをオンラインヘルプに読み替えればいいんじゃね?
712 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 10:14:12 ] ヘルプ見ろで切れまくる奴はいるは、ヘルプ見つけられない奴続出だわ、レベル低すぎ。 お前ら一体今までどうやってプログラミングしてたんだよ? 何でもググってコピペしてたんじゃねーの?
713 名前:デフォルトの名無しさん [2010/03/20(土) 10:14:17 ] エクセルVBAであるサイトのラジオボタンを自動で選択するマクロを作っているんだけど その方法が検索で調べた方法じゃできなくて困っています。 HTMLのラジオボタンの部分のソースは <input name="kumiban1" value="1" onclick="check1(this)" tabindex="3" type="RADIO"> となっています。 "kumiban1"のvalue="1" をクリックしたいのです。
714 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 10:37:36 ] >>713 同じページ内に同じ名前の name="kumiban1" が複数あった場合は objIE.document.all("kumiban1") だとエラーになる。 そういう時は objIE.document.all("kumiban1")(0) 、objIE.document.all("kumiban1")(1) のように番号を付ける。 自分のチェックしたいボタンが何番目かは自分で調べてね。
715 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 10:50:18 ] >>712 まぁまぁ、レベルの高いと思われる>>694 でさえ見つけられなったんだから。 俺もF1キーで大体事足りてるしね。 ところで2010では有名なFindメソッドの使用例の間違い、直ってるか誰か知らない? 俺未だにISDNだからベータ落とせない。 前トライしたら途中で切れてばっか。
716 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 10:53:30 ] >>712 コピペでマクロ作って社内で高評価 ↓ 自分で考えなければできないようなことをさせられる ↓ コピペ技術だけじゃどうにもなんねぇ・・・でもまともに組んだことねぇ ↓ そうだ!聞いて教えてもらう←いまここ ↓ 結局できない ↓ 評価右肩下がり
717 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 10:54:51 ] >ISDN マジか!! まだいるんだなぁ… テレホ思い出したわ つうか、ネカフェとか行ってDLしてくりゃいいんじゃねぇの?
718 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 11:10:16 ] かわりにダウンロードしてくれる友達とかいないの?
719 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 11:12:59 ] >>717 そんなものあったらすでに行ってるよ。 こちとらド田舎離島だからね。 今度弟にDLしてもらって郵送してもらうかな? 来年は光が開通するんだが。
720 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 11:14:44 ] >>718 リロードしなかった。 >>719 のとおり。
721 名前:デフォルトの名無しさん [2010/03/20(土) 11:24:21 ] >>714 >番号を付ける の記述はどうやるんですか?
722 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 11:33:19 ] >>721 えっ 回答にちゃんと番号付いてるやん
723 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 11:34:30 ] >>715 なんで>>694 がレベル高いことになってるんだかさっぱりわからんが、F1で事足りないときの 対処法を言ってるんだが。馬鹿(694)が一人でもいると、自分がマニュアル見ないエクスキューズになるのか?
724 名前:デフォルトの名無しさん [2010/03/20(土) 11:36:25 ] >>722 いや構文の記述法がよく分からないのです
725 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 11:40:09 ] プログラマー RTFMは 遠くになりにけり
726 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 11:44:44 ] >>723 レベルが高いをまじにとったか。 昨日Value関連でさんざん罵倒してたのが彼だと思ったからちょい嫌味で書いただけ。 人違いだったらごめんな。
727 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 11:49:06 ] >>724 ブラウザをコントロールする方法はいくつかあるから、 まずは自分のやりたい方法というか、試してだめだったプログラムをここにアップして。 そしたら修正点を書くから。
728 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 11:53:56 ] ってかここカルシムム不足がいるよね。 あーいえばこういうし困ったもんだ。
729 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 11:59:21 ] 牛乳飲もう
730 名前:デフォルトの名無しさん [2010/03/20(土) 12:05:08 ] >>727 いくつか試したんですが例えば↓こんな感じです。 Dim objIE As Object Dim objITEM As Object Dim nNO As Integer Dim strRADIO(0 To 5) As String strRADIO(0) = "1" strRADIO(1) = "2" strRADIO(2) = "3" strRADIO(3) = "4" strRADIO(4) = "5" strRADIO(5) = "6" nNO1 = 1 On Error Resume Next For Each objITEM In objIE.Document.all If objITEM.TAGName = "INPUT" Then If objITEM.Name = "kumiban1" And objITEM.Value = strRADIO(nNO) Then objITEM.Checked = True End If End If Next
731 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 12:26:28 ] >>728-729 まったく関係ないけど、それ俗説だから。
732 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 12:39:24 ] アホがアホって言われることが気に入らない奴が居るみたいね。
733 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 12:40:04 ] >>731 そうかカルシウムじゃ駄目なのか。 もう駄目かも知らんね。 もともとプログラマーは廃人が多いんだが。
734 名前:デフォルトの名無しさん [2010/03/20(土) 15:17:17 ] すみません、A列目の値が x で、1行目の値が y となるようなセルを探すのは VBAでできますか?Excelの機能だけでもできますか? どんな関数を使えばいいかヒントをください。検索します。
735 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 15:25:25 ] >A列目の値が x で、1行目の値が y となるようなセル ??????????????
736 名前:734 mailto:sage [2010/03/20(土) 15:34:52 ] すみません、A列の値と1行目の値をキーとして交差するセルを検索したいのです。
737 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 15:38:47 ] ctrl + Fで検索すればいいんじゃないの? つか、ここはVBAの質問スレだぞ。
738 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 15:47:57 ] すみません、そのセルの値をプログラム的に参照したいということです。
739 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 15:54:08 ] A列の値と1行目の値をキーってのがわからない 例をしめしてちょ
740 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 16:07:06 ] >>734 どうかな? Do While セルの値が空白になるまで if セルの値が"x"の場合 セルの位置を取得してLoop終了 end if 一つ次のセルへ移動 Loop
741 名前:740 mailto:sage [2010/03/20(土) 16:28:45 ] 考え方は以下の手順でよろしいかと。 A列を検索し、"x"の入っているセルの行番号を取得 1行を検索し、"y"の入っているセルの列番号を取得 Cells(行, 列).Value で目的のセルの値を取得
742 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 16:40:39 ] worksheetfunctionでlookupとかじゃだめなの? 質問者のレベル的にそこまで難しいことをしてなさそう。
743 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 16:52:32 ] でも、質問があると速攻答えてくれるお前らは何だかんだで根はいい奴等だと俺は思ってるんだからね///
744 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 16:59:13 ] >>713 ,730 コピペミスだと思うけど <input name="kumiban1" value="1" onclick="check1(this)" tabindex="3" type="RADIO"> を対象なら >>730 は 誤 nNO1 = 1 正 nNO = 0 ではないかな これでチェックが入るはず その上でonclick="check1(this)"を作動させたいのであれば objITEM.Checked = True を objITEM.Click に変更してみては?
745 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 18:44:50 ] 下手な言葉で説明されるよりも具体例を出して何をしたいのかを言った方が遥かに早いと思うぞ >>734
746 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 18:57:12 ] 質問です。 決まったセルの位置をVBAで扱う場合、 私は下記のように定数定義して使っています。 Public const 合計金額欄 As String = "D8" この方法は、 Range(合計金額欄) には良いのですが、 Cells(r, c) で使いにくい欠点があります。 みなさんはどんな風に位置を定義していますか?
747 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 19:30:22 ] >>746 極力マジックナンバーや文字列リテラルをコードの中に入れないと言う 方向性はいいけど、度が過ぎるとくどいコードになるから嫌われるよ。 セルくらいはコードの中でオブジェクト変数に Set c = Range("A8") と書いてcを使い回せばいいじゃん。 多くのプロシージャで定数の合計金額欄を使いたければ 各プロシージャの 中でオブジェクト変数に Set c = Range(合計金額欄) などとセットしてcを使い回せばいい。 CellsやRangeを頻繁に使うコードはあまりきれいじゃないから。
748 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 21:01:14 ] プロシージャの先頭で Set c = Range(合計金額欄) みたいにして、実際の処理にはcを使うようにすればいい。
749 名前:デフォルトの名無しさん [2010/03/20(土) 21:04:11 ] 「名前」を挿入しろよ
750 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 21:19:53 ] >>725 2010のFindメソッドのヘルプは相変わらず間違ったまま。 直す気はさらさらないんでしょうね。 2002のころから報告は山ほどいってるはずなのに。 あと静かになったところを混ぜ返すのもなんだけど >>669 ,>>672 別にFormatの第二引数の記述が間違ってるわけではないでしょう。 ご本人が>>678 で書かれてるように第二引数の書式にそって出力 されてるだけだから。 Format(Range("a1"), Range("a1").NumberFormat) すなわち Format(1, "General") すなわち"Genaral"の左4文字は書式指定文字で Format(1, "Gene"""ral""")と同じ。 シリアル値の1は1899/12/31(明治32年12月31日)だから 書式にそって"M32032ral"が出力された。 別に記述が間違ってるわけではないですね。 "M32032ral"に意味があるかと言われれば何もないけど Format(値,Range(***).NumberFormat)って書き方は日付の値検索で 使うこともあるね。 長文失礼
751 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 21:25:00 ] わかった。 お前が一番のいらない子だ。
752 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 21:27:08 ] つか、暴言は気まくりの奴をなんで「ご本人」とか言ってるんだか
753 名前:746 mailto:sage [2010/03/20(土) 21:35:04 ] >>747 >Set c = Range(合計金額欄) なるべく上記のようにして変数で取り扱うようにしたり、 Withで記述を省略したりしています。 >度が過ぎるとくどいコードになるから嫌われるよ。 入力フォームと定数定義を作りながら、 だんだん動作と実装のイメージを固めてコーディングに取り掛かる、 という作り方をしてるorz。
754 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 21:38:09 ] >>750 何を言いたいのか良く解らないけど、それマニュアル読めば解決することだよね? マニュアル読めという回答はするなという主張なのかな。
755 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 21:48:26 ] ほとんどの質問はぐぐれば解決することだよね? 以下略
756 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 21:49:12 ] 暴言ねぇ、 そんなのどうでもいい。 仮に丁寧でも内容が間違ってれば駄目だから。 ヘルプ読めはべつにいいんじゃないの? ただ間違った指摘があったから書いただけ。
757 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 21:51:25 ] >>746 本当に決まり切った位置なら、セルに名前を付ける。 home.att.ne.jp/zeta/gen/excel/c03p05.htm そうじゃないなら、Rangeを返す関数を作ったり、そのRangeの値を返す関数を作ったりする。 function SumPriceRange() as range set sumpricerange = range("d8") end function function GetSumPrice() as long getsumprice = range("d8").value end function とか。
758 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 21:58:44 ] >>750 君って、printf("%d", some_pointer)で変な値が出力されるんですけど、とか聞かれたら、 どのような仕組みでその変な値になるか説明しそうだな。
759 名前:746 mailto:sage [2010/03/20(土) 22:09:56 ] >>757 セル範囲を管理するモジュールを1つ用意して、 その中にセル範囲を返す関数を並べ、 各プロシージャはそれを参照するという感じでしょうか?
760 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 22:12:32 ] >>750 669だけど、WorksheetFunction.Text(値,書式)のように返り値1を期待してのものだったので俺の間違いでいいです。 これ以上相手すると疲れるから。 降参です。
761 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 22:17:28 ] 自分で事を荒立てといて、なんていいぐさw
762 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 22:23:59 ] 最初のレスでG+e+n+e+ralで表示された結果って書いとけば良かったんだよ。 マニュアル読めとか出し惜しみすんなよ。
763 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 22:37:59 ] なんか再燃してるねぇ。 2chはこうじゃなくっちゃw >>752 暴言がどれをさすか知らんけど、クソ生意気と書いたのは俺で質問者じゃねーから。 >>762 出し惜しみする頭なんてあるわけないと思うw Formatの使い方よく知らないからヘルプヘルプとわめいてたんじゃね?
764 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 22:41:43 ] ヤレヤレ ┐(´ー`)┌ マイッタネ
765 名前: [―{}@{}@{}-] デフォルトの名無しさん mailto:sage [2010/03/20(土) 23:49:45 ] >>750 どうもです MSも相変わらずですか。
766 名前:デフォルトの名無しさん [2010/03/21(日) 10:49:19 ] >>744 でもダメですた。 競艇の自動投票を作っているんですけど競艇のサイトが特殊なのかな・・・ ラジオボタンのチェックが入りません。
767 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 10:58:32 ] >>750 何がどう間違っているのか書けよ屑
768 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 11:30:42 ] >>766 投票ページにアクセスするには会員登録が必要だろうから、 そのページのソースをどっかにアップしてくんない?
769 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 12:06:08 ] >>750 お前の存在が間違いじゃないの? そもそも荒れた原因はお前が最初にFormatのやつうざいと言ったからだろ? Valueから暴れてるよな? もういいから消えろ。 素人の好奇心云々や文系高卒やらさんざん暴言吐いてたのはお前だと思うが 素人はお前だ。 玄人と思ってるかも知らんけど、それは勘違いというものだ。 わかった?トウシロのぼくちゃんw
770 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 12:07:29 ] テンプレに、「まずOption Explicitをつけろ」も追加が必要だな
771 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 12:09:54 ] おーすまん>>750 上はもちろんトウシローの>>767 あてね
772 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 12:11:17 ] >>750 > 別にFormatの第二引数の記述が間違ってるわけではないでしょう。 これってへりくつって言うんですよ。 それに既に>>678 で説明済みのものを、自分の言葉で長々とかかずにはいられない ほど自己顕示欲をもてあましてるんでしょうか。
773 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 12:13:46 ] >>769 そんなに基本的な論理学もわかってなかったことを指摘されたのか痛かったのかな。 知らないことを教えてもらったという意味で、感謝されてもいいくらいだ。
774 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 12:13:54 ] 「間違いを訂正するときには、 名前欄に自分のレス番号を記入すること」も追加かな。
775 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 12:20:31 ] はっきり言って、>>2 にもあるように、Excelのバージョンくらい書くのがこのスレの礼儀だし、 まずヘルプを確認するのが常識なんだけど、それを指摘してる奴が痛すぎて、相対的に バージョンも書かない、ヘルプも読まない奴の方が正義っぽくなってる。
776 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 12:22:47 ] そいつの相手してる奴がこれまた痛いw
777 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 12:23:19 ] >>767 "M32032ral"って何かって質問だから>>762 を読めば? 何で出し惜しみしたの?
778 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 12:28:44 ] いろんな厨がいるが、ヘルプ厨ってのもいるんだなw
779 名前:744 mailto:sage [2010/03/21(日) 12:39:04 ] >>766 これ以上は自分の手に負えそうに無い感じだけど 最後に1点だけ If objITEM.Name = "kumiban1" And objITEM.Value = strRADIO(nNO) Then Debug.Print "ここに北" objITEM.Checked = True End If とかやってみ イミディエイトウインドに何も表示されないなら 対象タグを見つけられてない フレーム分割されているとかそんな感じじゃないのかな
780 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 12:42:42 ] >>777 俺は頭悪いからそんなこと分らないんだよ とにかくヘルプだヘルプ! VB.NETのヘルプじゃなくてVBAのヘルプな
781 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 12:49:17 ] わからなかったら素直にそういえばいいのに。 自分の無知を認めることも大事だ。
782 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 13:20:02 ] printf("%d", some_pointer)で変なマイナスの値が表示されることに 一生懸命説明する奴大杉。
783 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 13:32:05 ] 自作自演もほどほどにしようぜ
784 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 13:33:34 ] 必死だなw しかしまぁ流れを読んで見ると>>678 に対する>>679 が一番アホだな。 こういう馬鹿ヘルプ厨がいるからおかしくなるんだよ。
785 名前:679 mailto:sage [2010/03/21(日) 13:38:32 ] 今顔真っ赤です。 こうですか?わかりません(><)
786 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 13:47:38 ] >>785 お前は暴れてるやつの一人だと思ったが、ただ無知だっただけの善意の第三者か?
787 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 14:02:22 ] レスが集中してるから暴れてるのは一人か二人だと思う。 暴言吐いてる人が構ってチャンじゃないかな。
788 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 14:46:51 ] OAuthをExcelVBAで書きたいんだけれど サンプルどこかに転がってるでしょうか?
789 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 15:52:47 ] withevents を使用するために参照設定があれば教えてください また、使用方法の勉強に適したURLあればお願いします。
790 名前:766 [2010/03/21(日) 16:34:22 ] >>768 ソースアップしました。 firestorage.jp/download/90a5112c83637a3be41a86ca9723b61c6c7229b1
791 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 17:15:55 ] WithEventに参照設定要ったっけ?入れなくてもThisWorkBookモジュールに入れたら動いたけど あと、その競艇投票ソースとExcelとの関係は?
792 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 17:17:38 ] あ、それから説明サイトは、、、、 mougの即行テクニックで witheventsで検索すればちょろちょろと解説がある
793 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 01:55:13 ] VBAで練習用にマインスイーパ作った 他なんか勉強になって作って楽しいもんないかね
794 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 02:17:08 ] >>793 ゲーム作って勉強したいならこんなんあるみたいよ。 www.amazon.co.jp/gp/product/4844326864/
795 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 03:01:05 ] >>794 なんだかオモチャ臭がぷんぷんするけど どうなんだろうね
796 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 03:08:47 ] >>795 どうなんだろねー? 動画見たら、こんなんVBAで出来るの!?って興味持ったけど 値段高いからねぇ。 図書館で検索したけどなかったわw
797 名前:デフォルトの名無しさん [2010/03/22(月) 08:28:03 ] VBA、というよりはWin32APIを使いまくってるけどね ttp://gyouzausa.hp.infoseek.co.jp/mode1/GAME/index.html
798 名前:デフォルトの名無しさん [2010/03/22(月) 08:45:10 ] 初歩的な質問ですけど、教えてください '対象行をdataシートへコピーする Sub ColumCopy(ByVal cnt As Integer) Dim k As Integer Worksheets("data").Activate k = 0 Do k = k + 1 Loop Until Cells(k, 1) = "" Worksheets("Page1").Range(Cells(cnt, 1), Cells(cnt, 8)).Copy _ Destination:=Worksheets("data").Range(Cells(k, 1), Cells(k, 8)) Worksheets("Page1").Activate End Sub というのを作ったんです(cntには51という値が、kには1という値が入っています)が、 実行時エラー アプリケーション定義またはオブジェクト定義のエラーです でWorksheets("Page1").〜の部分で終了してしまってます どの様に直せばよろしいのでせうか?
799 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 09:38:03 ] すまん、俺のせいですげー荒れたみたいだな。 > 結局Formatじゃ駄目でWorksheetFunction.Textってことか。 > 俺の間違いだったわ。 ヘルプ見れば(もちろん679をレスした時点で俺はヘルプを見てる)、自分のやりたいことを Formatで実現するには"General Number"を指定しないといけないということに気づくんじゃ ないかと思ってヘルプ見ろって言ったんだよね。 次からは、ヘルプ見ろってつい言いたくなっても自重するよ。
800 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 09:42:47 ] もう一個言い訳しとくと、>>672 で > 知ってるのか知らないのかわからないが とつけたのは、1にならない理由がわからないのか、わざと定義されてない引数を指定したら 変な文字列になったけど、その変な文字列に変換されるロジックをしりたいのかわからなかった から。 多分前者だろうと判断して、こう書いた。 > Formatの第二引数の指定方法が間違ってる。
801 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 09:50:36 ] あと、>>675 でちょっとカチンときてしまった。ヘルプも見ない奴に言われたくないって。 愚痴ばかりですまん。しばらくこのスレの書き込み自重する。
802 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 11:52:04 ] >>798 CellsにもSheetを指定しなきゃダメ Worksheets("Page1").Range(Worksheets("Page1").Cells(cnt, 1), Worksheets("Page1").Cells(cnt, 8)).Copy _ Destination:=Worksheets("data").Range(Worksheets("data").Cells(k, 1), Worksheets("data").Cells(k, 8)) With Worksheets("Page1") .Range(.Cells(cnt, 1), .Cells(cnt, 8)).Copy _ Destination:=Worksheets("data").Range(Worksheets("data").Cells(k, 1), Worksheets("data").Cells(k, 8)) End With Dim Ws1 As Worksheet, Ws2 As Worksheet Set Ws1 = Worksheets("Page1") Set Ws2 = Worksheets("date") Ws1.Range(Ws1.Cells(cnt, 1), Ws1.Cells(cnt, 8)).Copy _ Destination:=Ws2.Range(Ws2.Cells(k, 1), Ws2.Cells(k, 8)) 好きな書き方でどうぞ
803 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 13:51:29 ] >ヘルプ見ろって言ったんだよね。 皆ヘルプ見て分からなかったから質問スレに書き込むんじゃないかな。 キーワードがヒットしなかったか、重要な情報を見落としたかはともかく。
804 名前:798 mailto:sage [2010/03/22(月) 14:10:23 ] >>802 Cellにも指定しないといけなかったんですか。 気が付きませんでした。 ありがとうです
805 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 17:23:03 ] Cell表記でいつも思うんだが Worksheets("data").Range(Worksheets("data").Cells(k, 1), Worksheets("data").Cells(k, 8)) より Worksheets("data").Cells(k, 1).Resize(1, 8) のほうがコード読み書きしやすくない?
806 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 17:32:39 ] ついでに言えばコピー先は左上だけ指定すればいい Destination:=Worksheets("data").Cells(k, 1).Resize(1, 8) ↓ Destination:=Worksheets("data").Cells(k, 1)
807 名前:デフォルトの名無しさん [2010/03/22(月) 17:47:27 ] workSheets(\\\"data\\\").select したほうが短くならない?
808 名前:デフォルトの名無しさん [2010/03/22(月) 18:22:09 ] VBAを学ぼうと本を買ってきたのですが、いざ読んでみたものの、 この次何をしたらいいかよくわかりません。 何をしたらいい?
809 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 18:36:00 ] PCを窓から捨てる
810 名前:デフォルトの名無しさん [2010/03/22(月) 18:42:57 ] >>809 (´・д・`)窓からPC捨てたら、VBAが学べるの?
811 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 20:21:37 ] >>805-806 同感 しかしクソIME(Microsoft Office IME 2007)は上の「どうかん」が変換できないよ。 他にも辞書登録しないと駄目なのがいっぱいあるが中国人に作らせたんじゃないだろうな。
812 名前:デフォルトの名無しさん [2010/03/22(月) 20:42:03 ] 2chとかに書き込む時はgoogleのが便利なのに(´・ω・`) 最近はちょっと軽くなったし
813 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 20:42:20 ] 中国人だよ。
814 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 21:32:01 ] テスト同感 >>812 Googleの日本語入力があるなんて知らなかったよ。 今ダウンロードして使ってる。 いいこと聞いたよ。 >>813 アチャー、中国神社無理もないな。 うーん、Googleも完璧じゃないな。
815 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 23:55:19 ] >>808 手段と目的が逆転した時は、まず目的を探せ
816 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 00:36:44 ] 「入門書はクリアしたので次のステップは何がよいでしょうか」 という問いかけかもしれん
817 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 02:13:17 ] >>816 じゃあやっぱり目的を探せであってるんじゃないか?
818 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 07:08:47 ] じゃあ次は中級の本を読めばいいんじゃね?
819 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 13:54:18 ] Cells(3,5*i-2)からCells(k,5*i+1)まで というように行位置と列位置で指定した範囲をコピペしたい場合 何かいい方法ありますか? 行位置と列位置からセル番地を求めて Range("○○:××")って形で指定くらいしか思いつかないんですが
820 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 13:57:09 ] >>819 CellsはRangeの範囲指定にそのまま使える。 Range(Cells(3, 5 * i - 2), Cells(k, 5 * i + 1)) と書けばいい
821 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 14:15:50 ] >>820 ありがとうございます!
822 名前:デフォルトの名無しさん [2010/03/24(水) 03:18:22 ] 教えてください。 office 2000、Win XP SP3です。 このようなことはできるでしょうか? ・マウスでセルをクリックすると、そのセルに、色が付くとか、あるいは●の文字が出る。 ・もう一度そのセルを押すと、色が無くなる(白になる)とか、あるいは文字が消える。 セルを、まるでチェックボックスに見立てたような動作です。 通常のチェックボックスをシート上に置けばよいのでしょうが、 行単位で、それぞれにチェックを付けたいのです。 そうすれば、行の挿入や削除したとき、チェックボックスも一緒に増減するからです。 このようなことがVBAでできるでしょうか? 宜しくお願いします。
823 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 04:05:05 ] >>822 無理。 Worksheet_SelectionChange、Worksheet_BeforeRightClick、Worksheet_BeforeDoubleClickなどで 代用する手はあるけど希望通りの動作にならなかったり副作用が出たりする。
824 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 04:13:30 ] セルのクリックってWin32APIでできそうなんだけどなあ。 需要もあると思うんだけど、検索しても見つけられないんだよな。
825 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 08:07:38 ] 2003 XPです Sub デイデータ制御() Worksheets("水産").Cells(5, 2).Select End Sub これを同じブック・違うシート上でやると実行時エラー1004が出ます。 あと、activate とselect って何が違うんですか?
826 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 09:37:56 ] >>825 activeは範囲選択したときのtabの動作 selectは左クリックで操作したときの動作 selectの方が早くて不具合も少なかったと思う 後マクロはシート1に Sub Macro1() Call デイデータ制御 End Sub 標準モジュールに Sub デイデータ制御() Worksheets("水産").Select Range("a1").Select End Sub と記述する。別シートを洗濯できないのはスコープの問題。 とりあえず簡単に、別シートのマクロは記述できないと覚えて置けば良い それでもWorksheets("水産").Cells(5, 2).Selectと一度に記述ができないのは何でだったかな 忘れた。
827 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 14:34:19 ] >>826 回答ありがとうございます。 一度に記載出来ないのは仕様だったのね・・・
828 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 16:56:07 ] 自動整形をやめる方法ってありますか? *はスペース hoge*=*1 hogehoge*=*1 でなくて hoge*****=*1 hogehoge*=*1 って揃えたいんですが
829 名前:デフォルトの名無しさん [2010/03/24(水) 18:17:14 ] FUNCTIONで関数を作っったら、ユーザー関数として使えるのでしょうか? 本では使えるようなことが書いてあるのですが、 関数の挿入のWINDOWでユーザー関数の項目が出てこないので選べません。 エクセルは2003で、超超・・(略)・・超初心者です。
830 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 21:55:11 ] とりあえず、>>1-7 見ような
831 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 00:48:52 ] >>828 無理
832 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 00:50:37 ] 特定の文字列が含まれているシートの特定のセルを参照して、それをフォームに一覧表示したいです。 すべてのシートから参照する方法は分かったのですが、特定の文字列を含むシートのみを抽出する方法が 分かりません。 なにとぞお願いします
833 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 00:51:13 ] >>829 使える 出てこないのはたぶんFunctionを書く場所が間違ってる
834 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 00:52:09 ] >>832 Find
835 名前:832 mailto:sage [2010/03/25(木) 01:31:19 ] すいません、具体性が足りませんでした。申し訳ないです。 例えば、○○○、□□□、○○○1、○○○2というシートがある時、 ○○○が含まれる3つのシートのC1の値を参照し、一覧にしてフォームに表示させたいのです。 私としては、foreachを使っていけば良いんじゃないかと思って考えてはいるのですが、具体的な形に ならないものではまって動けないという感じです。 知恵をお貸し下さい。お願いします。
836 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 01:51:53 ] ttp://officetanaka.net/excel/vba/function/InStr.htm
837 名前:832 mailto:sage [2010/03/25(木) 02:06:29 ] ヒントありがとうございます。また頑張ってみます。
838 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 16:41:54 ] ボタンをクリックして表示させるフォームに引数って渡せないでしょうか。 クリックしたボタンによって違う処理をしたいんですが、引数を渡せないと大量の同じようなフォームをできてしまうのでそれを避けたいのですが…
839 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 18:07:16 ] 継承が使えればformを継承し新しいクラスを作る もしくはshow関数をオーバーロード もしくはグローバル関数を使う もしくはテキトーなtextboxに値でもいれておき、それを参照するようにする 下に行くほど簡単。どれでも好きなものを
840 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 18:16:40 ] excel2007で質問させてください。 各シートから条件に一致したデータを抽出して印刷しようとしています。 印刷ひな形となるシートのコピーを作成して そのコピーしたシートにデータを書き込んで印刷→シート削除という流れなのですが worksheets(hoge).copyを使用すると Application.ScreenUpdating = falseにしていても 画面遷移が起こってしまいます。 画面遷移なしで処理したいのですが何か他に方法はありますか? ひな形シートの全セル選択で貼り付けると印刷設定が移動できませんし 印刷設定のプロパティも全部コピーしていくしか無いのでしょうか
841 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 02:13:27 ] ちょっとVBAに慣れると調子に乗って ExcelベースのGUIで便利なアプリにしてやろうなんて 夢想しがちだが、肝心な機能の呼び出しが非公開だったり することが多くて失敗しやすいね
842 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 05:24:58 ] >>840 印刷設定のコピー方法はプリンターの機種ごとに違ってて、そう簡単にはコピーできなかったと思う
843 名前:デフォルトの名無しさん [2010/03/26(金) 09:41:04 ] ←→ ┌─────┐┌─────┐ └─────┘└─────┘ 上のような感じで複数のセルの中から値の入力されてるセルの上端に双方向矢印を入力させるというマクロを作りたいのですが 可能でしょうか?双方向矢印を引くだけならマクロの記録を使ってできるのですが値のあるセルだけにという条件をくわえるにはどうしたらいいでしょうか? どなたか教えてください。
844 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 13:18:35 ] >>843 こんな漢字? Sub a() Set d = UsedRange For Each s In d If s.Value <> "" Then s.Offset(-1, 0).Value = "←→" End If Next End Sub
845 名前:デフォルトの名無しさん [2010/03/26(金) 13:58:50 ] >>844 うまく説明できてなくてすみません。。 例えばA1からD9までの範囲があったとしてそこの中のセルに値があるものだけを検索して 図形の双方向矢印をセルの上端の線に合わせて入れたいんですが可能でしょうか?
846 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 17:26:23 ] >>839 グローバル関数でいけました。ありがとうございました
847 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 21:14:29 ] >>843 やりたいのはこんな感じ カナ?カナ? Dim Sh As Worksheet Dim r As Range Dim X1 As Integer Dim X2 As Integer Dim Y1 As Integer Dim Y2 As Integer Set Sh = ActiveSheet For Each r In Sh.Range("A1:D9") If r.Value <> "" Then With r X1 = .Left Y1 = .Top X2 = X1 + .Width Y2 = Y1 End With With Sh.Shapes.AddLine(X1, Y1, X2, Y2).Line .BeginArrowheadStyle = msoArrowheadTriangle .EndArrowheadStyle = msoArrowheadTriangle End With End If Next
848 名前:デフォルトの名無しさん [2010/03/26(金) 22:49:43 ] >>847 ありがとうございます!!まさにそのとおりです。 ちなみに矢印を上端の中心に持ってきて左右の長さを縮めたいのですが・・・ ←→ .←────→ ┌─────┐┌─────┐ └─────┘└─────┘ 今のままでは右のようになるので左の図のようにしたいと考えてまして そういった方法の指定も可能ですか?
849 名前:847 mailto:sage [2010/03/26(金) 23:18:03 ] >>848 可能 Rangeオブジェクトのプロパティ Left Top Width Height 後はヘルプを見るなりして がんばってみてね
850 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 23:27:15 ] 色んなことをやりたい人がいるんだな
851 名前:デフォルトの名無しさん [2010/03/26(金) 23:35:17 ] このスレはVBAとPerl14 のスレなのになぜPerlネタが一切でてこないんだ?
852 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 23:49:26 ] 次の質問どうぞ
853 名前:847 mailto:sage [2010/03/27(土) 19:33:47 ] >>843 もう見てないかもしれないけれど >>847 のコードは 型宣言を 勘違いしてたみたい 変数 X1 X2 Y1 Y2 は Single型もしくはLong型で宣言するべきだった Integer型だと少数点以下がカットされるので線が少しずれてる さっきヘルプを見ていて気づいた ゴメンね
854 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 03:21:33 ] シェイプ関連の位置指定は、ポイント単位だからなあ。 て、Longも駄目だろw
855 名前:847 mailto:sage [2010/03/28(日) 10:55:03 ] >>854 がーーーん またまたすみません たっ たしかにそうでした 回答者に向いてないかも俺 さすがに落ち込みました
856 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 11:02:37 ] ドンマイ。よくあることだw
857 名前:デフォルトの名無しさん [2010/03/28(日) 21:05:10 ] 質問です。 CSVファイルをエクセルブック内のワークシートに貼り付けするとき、 Workbooks.Open Filename:=csvfile Workbooks(csvfile).Worksheets.Copy after:=Workbooks(mybook).Worksheets("ファイル一覧") Workbooks(csvfile).Close こんな感じで簡単に貼り付けています。 csvファイルが5MBとかサイズが大きくても上のようなやり方で問題ないでしょうか。 csvファイルの先頭から1レコードずつ取得して貼り付けるという方法もネットから探し出せたんですが どっちがいいのか判断しにくいです。
858 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 21:07:57 ] ExcelVBA開発がメインの人っているの? 趣味とか、基本的にはVBとか、やけにできる事務員とか、そんな感じですか?
859 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 21:21:12 ] 自称やけにできる事務員ですw
860 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 21:35:38 ] 英単語が並べられている列があり、隣の列に意味を書き出す、というのを作っています。 使用する英語の辞書のURLはwww.alc.co.jp/ です。 「apple」という単語を検索するとURLは eow.alc.co.jp/apple/UTF-8/?ref=sa となります。 ここで、英単語を検索した結果表示されたページから該当箇所を抜き出すというやり方が分かりません。 上記の「apple」の場合、「・apple」から「分節ap・ple」まで抜き出したいのです。 やり方がわかる方教えてください。
861 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 22:09:20 ] >>860 * データの転載は禁じられています。 class="midashi"
862 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 22:25:22 ] >>857 5MBのCSVなんて動作遅くならないか? 速さをなんとかしたいならsqlでやる。
863 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 00:28:17 ] >>860 VBA上から Webページのデータを取得するのは そのWebページのソースを見て理解できないと無理 (そしてそれをどうVBA上からコントロールするかも) ソースをみたけど <DIV class=mr_10 id=resultList ondblclick=seow()> ってのがあるから id=resultList ←これを利用すれば 「・apple」から「《コ》アップル・メニュー」 までは抜き出せるね あとはタグを辿っていくしかないかな
864 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 13:57:45 ] >>858 やけにできる事務員だった データの正規化やコピーする際に絶対にミスしないのが魅力的 速度自体は大して変わらん
865 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 10:59:35 ] 1ブック内に複数あるシート全てを選択した状態で、且つ一シート目にのみ開始ページ番号が振られている状態で 印刷したときに割り振られるページ数を、印刷せずにマクロで調べたいのですがどのような方法があるでしょうか? このシートのこのセルは何ページ目に該当する、ということを調べて行きたいです。 プレビューで見ていけば可能ですがページ数が膨大なのでマクロで処理したいと思っています。
866 名前:865 mailto:sage [2010/03/30(火) 11:02:54 ] すいません、バージョンは2000です。
867 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 13:47:33 ] >>865 『このシートのこのセル』はそもそもどうやって特定するの? 1シートで印刷するのは複数頁あるってこと?
868 名前:865 mailto:sage [2010/03/30(火) 16:43:41 ] >『このシートのこのセル』はそもそもどうやって特定するの? 全シート走査で特定単語を置換していくので、 その置換処理が行われたときのセルを元に出力時のページをその都度 調べてワークファイルに書き出したいと思っています。 (置換処理、書き出す処理はできてます) >1シートで印刷するのは複数頁あるってこと? そうです。 1シートに1頁の場合と複数頁ある場合とがあります。
869 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 20:18:53 ] 特定単語を置換する前に 検索→セル番地取得→セル番地から頁数割り出し という作業をかませばいいんでないの?
870 名前:865 mailto:sage [2010/03/30(火) 21:13:16 ] >>869 「セル番地から頁数割り出し」の部分がわからないんです…
871 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 21:41:45 ] 一度、印刷プレビューで1頁で何セル印字するのか調べてみたら
872 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 22:13:52 ] 使った事ないけど VPageBreak オブジェクト HPageBreak オブジェクト なんかどう?
873 名前:872 mailto:sage [2010/03/30(火) 23:30:03 ] ちょっとテストしてみたけど 頁数割り出しの参考にならないかな Sub test() Debug.Print "改ページ数:"; ActiveSheet.HPageBreaks.Count For Each a In ActiveSheet.HPageBreaks Debug.Print "改ページ 行位置:"; a.Location.Row Next End Sub
874 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 07:24:45 ] Application.OnTimeでサブルーチンを時間起動したいのですが、 セルをダブルクリックして値入力状態であったり、モーダルで バルーンを表示させていたりすると、Application.OnTimeに制御 が移らず、サブルーチンを起動できません。 これを回避する知恵をお持ちの方、ご教示願います。
875 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 16:52:52 ] 回避するって >セルをダブルクリックして値入力状態であったり、モーダルで >バルーンを表示させていたりすると、 はどうするねん 別にexcel.applicationを起こしてそっちでontimeさせればええやん
876 名前:デフォルトの名無しさん [2010/04/04(日) 19:32:11 ] XPsp2,EXCEL2003です。 ピボットテーブルをVBAで作成しているのですが、 データによって(件数?)、集計の仕方が、 「個数/金額」になったり、「合計/金額」になったりします。 常に「合計/金額」になるようにするには、どうすれば良いのでしょうか? コードは次の通りです。 ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _ "ZZZWORK!R5C" & c_yymm_p & ":R" & lastrow & "C" & c_io_p).CreatePivotTable TableDestination:="", TableName:= _ "ピボットテーブル4", DefaultVersion:=xlPivotTableVersion10 ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1) ActiveSheet.Cells(3, 1).Select ActiveSheet.PivotTables("ピボットテーブル4").ColumnGrand = False ActiveSheet.PivotTables("ピボットテーブル4").AddFields RowFields:=Array("分類", "科目") _ , ColumnFields:="年月" ActiveSheet.PivotTables("ピボットテーブル4").PivotFields("金額").Orientation = _ xlDataField Application.CommandBars("PivotTable").Visible = False ActiveWorkbook.ShowPivotTableFieldList = False よろしくお願いします。
877 名前:デフォルトの名無しさん mailto:sage [2010/04/05(月) 02:29:05 ] >>876 ActiveSheet.PivotTables("ピボットテーブル4").PivotFields("金額").Function = xlSum
878 名前:876 [2010/04/05(月) 08:04:46 ] >>877 レスありがとうございます。 そのコードを追加したら、 実行時エラー'1004': PivotFieldクラスのFunctionプロパティを設定できません。 になりました。どうすれば良いのでしょうか? 追加した位置は、下記のステートメントの次です。 ActiveSheet.PivotTables("ピボットテーブル4").PivotFields("金額").Orientation = _ xlDataField よろしくお願いします。
879 名前:デフォルトの名無しさん mailto:sage [2010/04/05(月) 12:28:18 ] >>878 フィールド名の「金額」の部分を自分の作ったテーブルに合わせて書き換える テーブルの一番左上の灰色のセルの値を見る
880 名前:878=876 [2010/04/05(月) 17:07:07 ] >>879 レスありがとうございます。 常に合計になるようにできましたm(_ _)m
881 名前:デフォルトの名無しさん mailto:sage [2010/04/05(月) 18:37:42 ] サブメニューを複数個作りましたが、 どのサブメニューを選択しても、同じSubプロシージャを呼び出したいです。 Subプロシージャ側で、どのサブメニューが選択されたかを知るにはどうすればいいでしょうか? パラメーターとか使えますか? 参考になるサイトがありましたら紹介していただけませんか。