1 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 12:25:04 ] 過去スレ 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/
724 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 16:31:36 ] >>720 For-Next使う必要ないじゃん For i = 1 To 3 Next i Range("E5").Value = "H線" Range("E6").Value = "L線" Range("E7").Value = "中心線"
725 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 17:07:02 ] >>723 配列無しで出来る? 俺には思いつかなかった
726 名前:デフォルトの名無しさん [2009/11/23(月) 17:21:26 ] >>724 よく見たら笑えるww三回回ってワン あれは配列のお勉強だったんじゃね?
727 名前:デフォルトの名無しさん [2009/11/23(月) 17:32:17 ] For i = 1 to 3 Cells(5,i + 4) = Iif(i=1,"H線",Iif(i=2,"L線","中心線")) next i 配列思いつかなくてもできるじゃん不気味で自分はこんなの書きたくないけど。
728 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 18:01:59 ] なんでループにすんの?
729 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 19:07:59 ] これはどうですか For i = 1 To 3 Cells(5, i + 4) = Choose(i, "H線", "L線", "中心線") Next i
730 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 19:14:19 ] x = Array("H", "L", "中心") For i = 1 To 3 Cells(5, i + 4) = x(i - 1) &"線" Next i
731 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 19:17:41 ] vbaにもchoose関数あるの初めて知ったわw
732 名前:デフォルトの名無しさん [2009/11/23(月) 19:29:47 ] 同じく、知らんかった。へ〜。。。
733 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 20:05:46 ] x = Array("H", "L", "中心") ReDim y(1 to 1 , 1 to 3 ) For i = 1 To 3 y(1 , i)=x(i - 1) &"線" Next i Range("E5:E7")=y もしもしからなので動くかどうかはしらね
734 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 21:37:37 ] >>724 お前>>718 だろ?w
735 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 21:44:02 ] >>720 >>529 流に書くとこうだな。 For i = 1 To 3 Next Range("E6:E8").Value=WorksheetFunction.Transpose(Split("H線 L線 中心線")) 下が普通だが。 For i = 1 To 3 Next Range("E6:E8").Value=WorksheetFunction.Transpose(Array("H線","L線","中心線"))
736 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 21:53:08 ] おまいらForがかわいそうとかNextが不憫とか思わんの?
737 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 21:58:09 ] >>721 の一部修正 x = Array("H線", "L線", "中心線") For i = 1 To 3 Range("E5").Cells(1, i).Value = x(i - 1) Next i
738 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 22:02:05 ] なんだChooseがVBAで使えるのかよ。 俺も知らんかったわ。
739 名前:デフォルトの名無しさん [2009/11/23(月) 22:11:42 ] 何もないのに回っているFor-Nextを思うと萌える
740 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 22:25:43 ] For i = 1 To 3 Next i Range("E6:E8").Value = [{"H線";"L線";"中心線"}]
741 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 22:28:06 ] Evaluateか、なるほどそれもあるな。
742 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 22:28:09 ] Sub 萌() Do Loop Exit Sub
743 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 22:33:23 ] >>739 何もなくても行数を稼ぐのが昔はプロの技と言われたもんだぜ
744 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 22:35:06 ] ボッタクリの末路は...
745 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 22:43:56 ] >>742 無限ループって怖くね? pc11.2ch.net/test/read.cgi/prog/1140435913/
746 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 00:22:51 ] i = 1 Loop1: If i > 3 Then GoTo Loop1_End Select Case i Case 1: Cells(5, 5).Value = "H線" Case 2: Cells(5, 6).Value = "L線" Case 3: Cells(5, 7).Value = "中心線" End Select i = i + 1 GoTo Loop1 Loop1_End:
747 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 14:22:47 ] Ruby 1.9 And Rails 3.0 www.slideshare.net/arrrrcamp/ruby-19-and-rails-30
748 名前:デフォルトの名無しさん [2009/11/26(木) 15:55:58 ] >>745 ずーっと萌え続けるからいいんじゃね
749 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 17:09:50 ] www.nikkei.co.jp/news/market/20091126m1ASS0ISS16261109.html
750 名前:デフォルトの名無しさん [2009/11/26(木) 17:39:38 ] まったくズブの素人です。 これからブイバ初めても間に合いますか? プログライミングをでけるようになりたいから 手始めにVBAから勉強するのか迷い中です。 何か時代は.NETでブイビーも.NET それじゃ〜ブイバももう手遅れなんでしょうか?
751 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 17:47:16 ] 373 デフォルトの名無しさん [] 2009/11/26(木) 17:41:52 ID: Be: パイソンって強そうな名前ですが、本当につおいのですか? でもちょっとHでもありますが。。
752 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 18:39:28 ] ↑ 暇人
753 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 19:17:14 ] >>750 プログラミング云々以前に日本語を正しく書けるようにしろよ 「プログライミング」とか「ブイバ」とかさ、、、w それに間に合うとか間に合わないかとかの問題じゃないと思うよ。 Excelでやらせたい事があるんだったらVBAだろうし。
754 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 20:41:09 ] >>753 あっプログラミングの間違い、頭ではプログラミングつって 書いた覚えなんだけんど。 そんでブイバって読むんとちゃうんかいな。長いでど ブイビーエーとでも言うんですか? 田舎もので素人だもんで、そげんこつも誰も教えてくれんから、 愛嬌ということで。。
755 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 20:49:00 ] 972 デフォルトの名無しさん [sage] Date:2009/11/23(月) 17:09:32 ID: Be: ID強制になるだけで静かになるよ 973 デフォルトの名無しさん [] Date:2009/11/23(月) 18:02:02 ID: Be: その変更はキミに任せるから提案してくれ。 974 デフォルトの名無しさん [] Date:2009/11/23(月) 18:18:58 ID: Be: 反対するのは荒らしたい奴だけだから強行しちゃって良いよ
756 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 21:23:18 ] ↓うーんセフセフのAA
757 名前:デフォルトの名無しさん mailto:sage [2009/11/27(金) 21:27:13 ] ↑そのAA持ってないんですいませんがw Excel2007 テキストボックスについてですが。 MultiLineをtrueに、ScrollBarsをfmScrollBarsBoth にセットして、データの表示(更新)用に使っています。 表示する時にマウスのホイールボタンでスクロール出来るようには 出来ないのでしょうか?
758 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 01:08:03 ] yes we can
759 名前:720 [2009/11/28(土) 11:55:34 ] EXCEL 2007 こんにちは マクロを使い、オートフィルで連続データを作成しているのですが、 書式もオートフィルされてしまい困っています。 値だけをオートフィル(連続データ)するやり方があればご教授ください。 宜しくお願いします。
760 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 12:12:04 ] .value
761 名前:デフォルトの名無しさん [2009/11/28(土) 12:18:21 ] マクロの記録でやってんのかな 試したけど無理っぽいから、あきらめてきちんとコードを組む
762 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 12:40:59 ] 構文 Object.AutoFill(Destination, Type) 設定項目 内容 Object Rangeオブジェクトを指定 Destination オートフィルの書き込み先のRangeオブジェクトを指定 Type 入力されるデータの種類を指定。XlAutoFillクラスの定数を指定 XlAutoFillクラスの定数 ・xlFillDefault:標準のオートフィル ・xlFillSeries:連続データ ・xlFillCopy:コピー ・xlFillFormats:書式のみコピー ・xlFillVaules:書式なしコピー ・xlFillYears:年単位 ・xlFillMonths:月単位 ・xlFillDays:日単位 ・xlFillWeekdays:週日単位 ・xlLinearTrend:加算 ・xlGrowthTrend:乗算
763 名前:デフォルトの名無しさん [2009/11/28(土) 13:02:02 ] でも書式コピー梨、連続(加算)は出来ないっぽいよ
764 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 16:03:46 ] たぶんそうだよねー オートフィルもExcelマクロっぽくて悪くないと思うから とりあえずオートフィルして書式は別に直すとか
765 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 18:56:46 ] 質問です。 Excel VBAからワードや他のエクセルファイルの操作ってできますか? やりたいこととしては、VBAを仕込んだxlsファイルに、 置換したい文章を記述し(置換前と置換後をシート内に記述)、 指定したフォルダ内(サブ含む)にあるエクセルファイルやワードファイルに 書かれている文章を変換したいのです。 その際、「この文章を変換しました」みたいなログも出せたら最高なのですが、 いい方法ってありますか?
766 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 18:58:00 ] yes we can
767 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 19:10:59 ] >>765 VBAから他のファイルを操作できる ログは画面にだすならmsgboxでいいでしょ フィルに書き出したいならテキストファイルでもオープンして書き出せばよい
768 名前:759 [2009/11/28(土) 20:18:10 ] >>761 >>763 >>764 ご回答、ありがとうございます。 やはりむりですか・・・ オートフィル以外でいくつかつくったのですが、スピードを重視したくオートフィルにこだわっていました。 やりたいことは、A1の値を基にB1:B100までA2で指定された増分値に沿った降順連続データをつくりたかったのです。 考えついたものを下記に貼りますので、改善点やより良いコードがありましたらご教授ください。 宜しくお願いします。 Sub test1() 基準値 = Cells(1, 1).Value 増分値 = Cells(2, 1).Value For i = 0 To 99 Cells(1 + i, 2).Value = 基準値 基準値 = 基準値 - 増分値 Next i End Sub Sub test2() 基準値 = Cells(1, 1).Value 増分値 = Cells(2, 1).Value For i = 0 To 99 Cells(1 + i, 2).Value = 基準値 - i * 増分値 Next i End Sub Sub test3() 増分値 = Cells(2, 1).Value For i = 1 To 100 Cells(i, 2).Value = WorksheetFunction.Sum(Cells(1, 1).Value, Cells(2, 1).Value - i * 増分値) Next i End Sub
769 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 20:28:08 ] >>767 具体的にはどのようにするんでしょう・・・<ファイル操作 また、AAAという単語はヒットしたので置換したけど、 BBBという単語がない場合、AAAだけ置換したよ、というログとかも取れますか?
770 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 21:01:43 ] Excel VBA WEB連携術って本みつけたんだけど誰かレビューしてくれませんか? ちなみにieを使ったシステムへの自動化を考えてます。 それの助けになるか聞きたいです。
771 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 21:08:53 ] >>770 おし引き受けた! レビュー: 読んだことないけど多分読まないよりましじゃね?
772 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 23:39:43 ] >>770 何をやりたいのかもうちょっと詳しく 自動化って言えば聞こえはいいけど、よくよく話を聞いてみると たいていは株とかFXとかで楽して儲けたいだけみたいなのが多い
773 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 23:44:31 ] >>769 例えば、マクロ記録で目的のファイルを開いて、できたブックからシートを自分のシートに移動する で、移動してきたシートをコピーしといて、どちらか一方を置換する あとは置換後に双方を比較して、違う部分を表示するとか 他にも方法は山ほどある まずは自分でアウトラインを固めて、ポイントを絞って質問してくれないと回答しようが無い
774 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 23:45:54 ] >>772 まぁ株なりFXの自動売買だろ そして、この程度も自分で調べてできない人間はロクなシステム組めないに1000ガバス
775 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 23:57:41 ] >>773 すいません、大雑把にしか書いてなかったので答えることもできなかったですねorz 仕様としてはこんな感じです。 VBAを記述したExcelに、置換前・置換後を記述したの置換リストをシートとして作成しておきます。 [VBA記述xlsファイル上の置換リスト] 置換前 | 置換後 ------------------ ABC | XYZ log-in | log in login | log in そのシート上にフォルダを指定するセルを用意し、ボタンを押す(マクロ実行)ことで、 指定されたフォルダ(サブフォルダ含む)にあるxlsファイル、docファイルを参照。 ヒットしたファイルの中に、置換リストの置換前と同じ文章があった場合、 ログとして「(ファイル名)▲▲を●●に置換」のような情報を出力し、置換を行います。 うまく纏まっていないかもしれないですが、このような仕様でつくりたいと思っています。 ググってみた感じ、ワードファイルの文章置換を行うロジックはあったのですが、 「本当に置換を行ったか」が取得できなさそうな感じがして・・・。 (▲▲があれば●●に置換する、という処理なので、▲▲がなくても変換せずに処理が終わるはず。変換したか?という状態が取れない感じが)
776 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 00:06:24 ] このスレはプログラマにとっては有益なスレで クレクレ君には無益なスレです テンプレ参照
777 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 01:18:29 ] プログラマにとっては有益 ← ここ、笑うところ?
778 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 01:22:35 ] ゆとりには笑うとこまで指示してやらんと
779 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 02:30:54 ] OSはXP バージョンは2002です。 単刀直入に聞きます 「ユーザーフォーム上に設置したスプレッドシート」 これをエクセルのシートのように読み込む(ActiveSheet.Range(Cells(1, 1)〜のような書式)ことは可能でしょうか?
780 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 10:31:56 ] >>779 可能
781 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 14:03:26 ] vistaを使ってると、IE7がプリインストールしてあるためにウェブクエリ取得やIEの操作などが正常に作動しないことがあります。 そこで、windows7にはXPモードがあると聞きました。そのXPモードで使われるIEがバージョン6なのかが気になっています。 IE6を使えるなら早めにwindows7搭載のPCに買い替えるつもりです。どうかお教えください。
782 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 14:41:08 ] IE6を使える
783 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 14:46:46 ] まずIEはバージョン6 注意事項としてXP Modeは Windows 7 Professional 以降で搭載される。 一般のメーカー製 Windows 7 プレインストールPCはほとんどが Home Premium でXP Modeは搭載されてないので注意 あと、XP Modeといっても特に他アプリと連携するような場合には 正常に動作するか分からないのでできれば事前にどこかで確認してみることをすすめる おそらく統合機能ってのを使わなければ、ほぼ問題ないとは思うけど、統合機能使わないと XP Mode の利点はあまりないと思うし
784 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 15:05:34 ] バーチャルPC使えよ
785 名前:781 mailto:sage [2009/11/29(日) 17:48:41 ] やはりMSなりに問い合わせたほうが無難なのですね。 バーチャルPCについて調べてみましたが、これならvistaでもxpを動かせるのですね。インストールして試してみます。 ありがとうございました。
786 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 15:26:51 ] Excelの関数の質問なのですが 入力した数字が6〜10のとき○、11〜15のとき◎ A B 1 6 ○ 2 11 ◎ という風に○や◎を表示させたいのですが、関数がどうしてもわかりません。 どなたかよろしくお願いいたします。
787 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 15:33:26 ] VBAと関係ないね
788 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 15:52:52 ] すみません、間違えました。
789 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 19:19:49 ] Function Maru(n) Maru = "" If (6 <= n) And (n <= 10) Then Maru = "○" If (11 <= n) And (n <= 15) Then Maru = "◎" End Function
790 名前:デフォルトの名無しさん [2009/11/30(月) 22:39:34 ] リストボックスで数値の項目を右詰めにしたいんですが、どうすればよいでしょうか? 2007です。