Excel VBA 質問スレ Part39 [転載禁止]©5ch.io
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2015/11/27(金) 20:36:45.35ID:9HV+ag/s___
___ /____ヽ ____
/____\ | |´・ω・`| | /___ヽ
.l |´・ω・`| ニX二 . ̄ ̄ ̄ 二X二 |´・ω・`| l 俺たちに任せろ
!、 ̄ ̄ ̄ ヽ | | /  ̄ ̄ ̄/
ヽ_/ヽ、 ヽ__) \__/\_/. /_/ ノヽ_/
 ̄  ̄ ̄
このスレはコード書き込みOKです。
作成依頼もOKですが、作成依頼限定ではありません。
コードが嫌な人・作成依頼が嫌な人は別スレ建ててください。
※前スレ
Excel VBA 質問スレ Part38 [転載禁止]2ch.net
http://peace.2ch.net/test/read.cgi/tech/1441619979/
0342デフォルトの名無しさん
2016/01/10(日) 17:51:41.19ID:wKvoM5NG他言語どころか
Excelのピボットテーブルも入力規則も使ったことが無い
それどころかワークシート関数すら覚束ない
でもVBAだけで給料もらえるから問題なし
0343デフォルトの名無しさん
2016/01/10(日) 18:07:03.32ID:W+alusTR幾ら貰ってるかは知らないけど。
0344デフォルトの名無しさん
2016/01/10(日) 18:43:22.48ID:KeJgEHCD0345デフォルトの名無しさん
2016/01/10(日) 21:31:31.28ID:NoYOPUfs「VBAがプログラムwwあれをプログラムと呼んだら駄目っしょ笑」みたいな人たまにいる
0346デフォルトの名無しさん
2016/01/10(日) 22:07:49.93ID:fKRpFEpVマイクロソフトは勿体ないよな
ビジネスに発展させるには素人にスゲーと思わせてナンボなのに、
新卒の研修にちょっくら使わせてみるかみたいなイメージになってしまっている
0347デフォルトの名無しさん
2016/01/10(日) 22:08:12.25ID:xRSSZTjvExcelは入出力のインタフェースに過ぎないっていう使い方かな?
>>345
一種のコンプレックスのあらわれなんだろうか。
VBAは言語としてダメな点は多いけどね。
0348デフォルトの名無しさん
2016/01/10(日) 22:55:42.57ID:agiL7Ileエクセルがあればすごいんです(キリ って感じ?
OS上で直接動く言語から見たら頭ポンポンしたくなるだろ
0349デフォルトの名無しさん
2016/01/10(日) 23:08:46.92ID:+vbjBZah0350デフォルトの名無しさん
2016/01/10(日) 23:12:22.88ID:+vbjBZah0351デフォルトの名無しさん
2016/01/10(日) 23:32:51.77ID:nfQKqPqr>>344
0352デフォルトの名無しさん
2016/01/11(月) 01:59:22.45ID:AWAF7CGx0353デフォルトの名無しさん
2016/01/11(月) 07:21:46.06ID:gsKg8O84出来ること全く変わらんのだが
0354初心者A
2016/01/11(月) 08:26:22.84ID:HLjXNd8wOption Explicit
Const sheet3name = プロット(■前後のダブルクオテーション略!)
Sub Macro1()
Dim ws As Worksheet
Dim chart1 As Worksheet
Application.DisplayAlerts = False
For Each ws In Worksheets
If ws.Name = sheet3name Then
If Worksheets.Count > 1 Then
ws.Delete
Else
GoTo Label1
End If
End If
Next
Application.DisplayAlerts = True
Set chart1 = Worksheets.Add
ActiveSheet.Name = sheet3name
Label1:
End Sub
0355初心者A
2016/01/11(月) 08:28:53.39ID:HLjXNd8wを作りました。
http://ww10.puny.jp/uploader/download/1452467710.zip
パスワード:abc
■やりたいこと
ワークシートの存在確認、削除、追加をするプログラムを
グラフシートの存在確認、削除、追加をするプログラムに修正したい。
For〜Nextの部分をどう、修正したらいいか、ご教授お願い致します。
修正前(ワークシート)
Dim ws As Worksheet
Dim chart1 As Worksheet
Set chart1 = Worksheets.Add
ActiveSheet.Name = sheet3name
修正後(グラフシート)
Dim ws As Chart
Dim chart1 As Chart
Set chart1 = Charts.Add
ActiveChart.Name = sheet3name 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
0356初心者A
2016/01/11(月) 10:13:11.60ID:HLjXNd8w'グラフシートの存在確認、削除、追加をするプログラム
Option Explicit
Const sheet3name = プロット(■前後のダブルクオテーション略!)
Sub Macro1()
Dim ws As Chart
Dim chart1 As Chart
Application.DisplayAlerts = False
For Each ws In Charts
If ws.Name = sheet3name Then
ws.Delete
End If
Next
Application.DisplayAlerts = True
Set chart1 = Charts.Add
ActiveChart.Name = sheet3name
End Sub
0357デフォルトの名無しさん
2016/01/11(月) 11:19:37.13ID:eiYfk44d素のままのVBAじゃなくて、そういう弄らなきゃいけないところをマイナスポイントにするかどうかで変わってくるな。
むしろプラスポイントと見なす人もいるかも知れんが。
自分は不満点いろいろある。
0358デフォルトの名無しさん
2016/01/11(月) 14:09:09.67ID:np4MR6nOノートPCを閉じてスリープ状態になってしまってもvbaプログラムが止まらないようにする方法はありますか。移動や別の仕事で常にPCを開いとくことができません。よろしくお願いします。
0359デフォルトの名無しさん
2016/01/11(月) 14:11:54.26ID:6idxIuPkhttp://blogs.msdn.com/b/ayatokura/archive/2016/01/09/ga.aspx
0360デフォルトの名無しさん
2016/01/11(月) 14:32:56.61ID:grtS6L7Lそんな過去ネタを今更。
ハッキリ言って糞。使いたいとも思わない。
0361デフォルトの名無しさん
2016/01/11(月) 14:38:18.74ID:qDZy1U6Zスリープって眠るってことだよ
閉じても眠らない設定にしなさい画面だけ消すとか
0362デフォルトの名無しさん
2016/01/11(月) 14:49:09.64ID:db4WHs280363デフォルトの名無しさん
2016/01/11(月) 15:21:48.39ID:Fkm8B5dx電源オプション→カバーを閉じたときの動作の選択→バッテリー駆動/カバーを閉じた時の動作を「何もしない」に設定すれば
パソコンを閉じてもプログラムは動き続ける
0364デフォルトの名無しさん
2016/01/11(月) 15:43:06.72ID:grtS6L7L元々、MSQUERYではやれていたが、実に古臭いUIと仕組みだったからねぇ。
どうなることやら。Accessを殺しに来るのかどうかが注目だがね。
0365デフォルトの名無しさん
2016/01/11(月) 16:02:56.77ID:Fkm8B5dx0366デフォルトの名無しさん
2016/01/11(月) 16:17:41.70ID:grtS6L7Lそもそも、前からAccessについてはその存在について、実際に無くすっていう議論は
出てるんだよ。ユーザの間でも有名な話だぞ。2013が出た時はホッとしたがあの直前
当たり、下手するとそろそろAccessはユーザ数も減ってきており、Excelに統合されて
消えるんじゃないかってね。
この手のアプリってAccessしか実質的に存在しないし、Excelよりもとっつきにくいという
こともあってね。既にテーブル機能は実装されているし、ここにクエリーが本格的に実装
となると、Accessのポジションは危うくなる。
0367デフォルトの名無しさん
2016/01/11(月) 17:00:49.67ID:d/8QAidvむしろこれからはビッグデータの時代なので、accessは逆に更に改良されていかないのかな
0368デフォルトの名無しさん
2016/01/11(月) 17:23:46.95ID:np4MR6nO>カバーを閉じた時の動作を「何もしない」に設定
ありがとうございます。
こちらは、プログラムは動きつづけ、バッテリーも若干節約になるという認識でかまいませんでしょうか?
0369デフォルトの名無しさん
2016/01/11(月) 19:03:39.63ID:U/eWhfN7そうすりゃ無駄に空列とか入れるヤツとか排除できる。
0370デフォルトの名無しさん
2016/01/11(月) 19:43:34.53ID:Fkm8B5dx基本は液晶が消えたままになるだけだから、そんなに節約にはならない
あと機種によっては閉じたまま計算を続けさせると熱暴走するんで、持ち歩くときはケースに入れず通気に注意すること
0371デフォルトの名無しさん
2016/01/11(月) 21:16:15.69ID:N366RwDJ.Netで使いたければ外部から触ればいいだけの話だからな。
いつまでもこのままって訳にも行かないだろうけど、そもそもモジュールをフォルダ階層化して扱えない
VBAは
クラスとか沢山作って管理するのに向いてない。
0372デフォルトの名無しさん
2016/01/11(月) 23:15:43.34ID:JhD6lfDm前後のスペースごと置換すればいいんじゃね
0373デフォルトの名無しさん
2016/01/11(月) 23:41:08.19ID:6idxIuPk例えばA1セルとB1セルの値を抜き出し、C1に (A1の値)〜(B1の値) と表示したいときは
Range("C1") = Range("A1").Value & "〜" & Range("B1").Value
となりますよね。
ここでA1とB1の値が必ず小数点第一のくらいで表示したい時はどうすればいいのでしょうか。
例えばA1とB1が下記の値の場合は
A1=40.123
B1=20
上のVBAだとC1には「40.123〜20」と表示されます。これを「40.1〜20.0」と表示するようにしたいんです。
そういう関数ありますか?
0374デフォルトの名無しさん
2016/01/12(火) 00:16:04.17ID:w+wRH2JNRange("a1").Value = 40.123
Range("b1").Value = 20.1
Range("c1").Value = Range("A1").Value & "〜" & Range("B1").Value
Range("c2").Value = Format(Range("A1").Value, "###.0") & "〜" & Format(Range("B1").Value, "###.0")
End Sub
0375デフォルトの名無しさん
2016/01/12(火) 00:28:30.25ID:1Tg2WctIおお
なるほど、そうやるんですね。ありがとうー
0376デフォルトの名無しさん
2016/01/12(火) 06:54:03.50ID:ZPc78C3iA=グローバル変数
って書かれてるともうダメだし
0377デフォルトの名無しさん
2016/01/12(火) 07:49:37.59ID:/ZqCERvoVBE上では必ず前後に半角スペースが入ると思うが?
0378デフォルトの名無しさん
2016/01/12(火) 08:46:16.41ID:ZXe+fB4P俺としては消えてほしくないんだけれどねww
ただ、扱えるカラムや行数増やしたのも、その布石。ただスピードがなwww 現時点
では話にならないし、データベース関数も全く充実していない。
ただ随分前からAccess消えるかもって話は出てるね。
0379デフォルトの名無しさん
2016/01/12(火) 09:47:13.68ID:MvXD/tOc直後がコンマやカッコだとスペースが入らない
0380デフォルトの名無しさん
2016/01/12(火) 10:12:53.76ID:/ZqCERvoなるほど。
両側スペースと . と , と ( を個別にやればいいかな。
プレフィクス・ポストフィクスなんてないよね?
0381デフォルトの名無しさん
2016/01/12(火) 10:34:26.94ID:+GqIZBzhVBAのコードを変更(置換)する VBAコードを作っちゃえば?
0382デフォルトの名無しさん
2016/01/12(火) 10:57:36.37ID:MvXD/tOc0383デフォルトの名無しさん
2016/01/12(火) 12:48:46.20ID:ZPc78C3i行末には入らないし、>>379 の言うように , ( ) とかもダメ
>>380
そんなことするぐらいなら「完全に一致する単語だけ検索する」にチェック入れた方がいい
0384デフォルトの名無しさん
2016/01/12(火) 12:53:56.70ID:ZPc78C3iDBの機能が欲しいだけなら SQL-Server の Compact Edition, Express Edition, LocalDB とかでやればいい
Access って入力画面とか帳票をお手軽に作るツールでしょ
0385デフォルトの名無しさん
2016/01/12(火) 14:03:34.59ID:kdR1XWYYこれ実行すると、v(1) => 1, v(2) => 2, v(3) => Nothingにならないんだ。
わかりづらい。
0386デフォルトの名無しさん
2016/01/12(火) 14:33:05.97ID:1Tg2WctI0387デフォルトの名無しさん
2016/01/12(火) 15:09:45.03ID:/ZqCERvoああ、「前後の空白」の"後"の方は行末の場合ダメってことか。失礼した。
>>385
うん、データをシフトする訳じゃなくて見かけ上のインデックスが変わるだけ。
だからデータをコピーしたり範囲を広げたり縮めたりするのは本来は不要な動作。
もうメモリを直接書き換えることにした。
0388デフォルトの名無しさん
2016/01/12(火) 15:28:05.64ID:WkQGbLg90389デフォルトの名無しさん
2016/01/12(火) 15:50:17.33ID:FWKIiayM0390デフォルトの名無しさん
2016/01/12(火) 16:10:53.83ID:1Tg2WctIAmazonのレビューもわりと高評価だが、VBAの参考書ならもっと他にいいのあるだろう
0391デフォルトの名無しさん
2016/01/12(火) 17:56:50.78ID:wYSSDoUNhttp://jobinjapan.jp/job-listing/keyword-vba.html
0392デフォルトの名無しさん
2016/01/12(火) 19:36:12.43ID:/ZqCERvoMsgBox ("こんにちは") の大間違いって何なん?
0393デフォルトの名無しさん
2016/01/12(火) 23:53:13.87ID:iltzJQ7p0394デフォルトの名無しさん
2016/01/13(水) 00:08:28.28ID:NbxXZYkh0395デフォルトの名無しさん
2016/01/13(水) 00:12:12.63ID:NbxXZYkhWorksheets("Sheet1").Range("A1").Value = "こんにちは"
まだこっちだ
0396デフォルトの名無しさん
2016/01/13(水) 05:12:39.94ID:6j8B4A3/EXCEL VBAでやるなら、な
他の言語でもhello worldなんて、MsgBoxで表示と大差ないけど
ちなみに間違いってのは
MsgBox (こんにちわ)
が間違ってるって話じゃないのか
0397初心者A
2016/01/13(水) 06:27:10.38ID:hFbJh3ij2点間距離の差(22).xls
パスワード:abc
http://ww10.puny.jp/uploader/download/1452633400.xls
そのうち削除します。
もっと、わかりやすくプロシージャを分けた方がいいんだろうけど。
素人が見様見真似で作成したものです。
アドバイスなどありましたら、コメント願います。
0398初心者A
2016/01/13(水) 07:54:34.97ID:hFbJh3ij閉じるボタンが表示されないので、以下のように修正。
Sub 印刷プレビュー()
Application.DisplayFullScreen = False
ActiveWindow.Zoom = True
DoEvents
ActiveSheet.PrintPreview
End Sub
0399初心者A
2016/01/13(水) 08:00:33.92ID:hFbJh3ij.Placement = xlMove
.PrintObject = False
を追加
With chart1.Buttons.Add(20, 50, 80, 25)
.OnAction = "全画面表示ON"
.Characters.Text = "全画面表示(ON)"
.Placement = xlMove
.PrintObject = False
End With
他のボタンも同様
0400初心者A
2016/01/13(水) 08:31:29.89ID:hFbJh3ijhttp://ww10.puny.jp/uploader/download/1452641324.zip
2点間距離の差(23).xls パスワード:abc
0401デフォルトの名無しさん
2016/01/13(水) 13:48:54.18ID:2tOFPV9Bまたお前か。
人に見てもらうようなコードを書こうとは思わないのかね。
0402デフォルトの名無しさん
2016/01/13(水) 14:02:28.80ID:LYjGdwXlひとつの関数に詰め込みすぎ
もっと分割する
そして20行くらいに収めてforやifのネストは2つまでにする
変数も多すぎて見にくい
0403初心者A
2016/01/13(水) 15:46:31.62ID:hFbJh3ij>20行くらいに収めてforやifのネストは2つまでにする。
>変数も多すぎて見にくい
今後、心掛けてみます。
スクロールしないとプロシージャ全体が見れないのは、
たしかに見にくいですね。
ありがとうございます。
0404デフォルトの名無しさん
2016/01/14(木) 04:33:01.66ID:fK8eMzuy画面を大きくすればいいんだから
0405デフォルトの名無しさん
2016/01/14(木) 04:47:09.57ID:5jp4f0T2関数名や付随するちょっとした説明を見れば中身を見なくても何する関数か分かるようにするのが美しい
0406デフォルトの名無しさん
2016/01/14(木) 08:51:34.23ID:hDrEawniプロシージャってのは、別に行数が多いから分けるってもんじゃないぞww
例えばループで何度も同じような大きめの処理をするのであるならば、それは
呼び出す形にして切り分けろって事だぞ。ループの中にダラダラと書いてある
と、それは見辛いってこと。
スクロールしないかどうかなんて問題じゃない。
0407デフォルトの名無しさん
2016/01/14(木) 09:20:36.05ID:kariNJk1スクロールしなきゃ全体が見渡せないなんて、結局自分がつらい。
0408デフォルトの名無しさん
2016/01/14(木) 10:23:19.25ID:lO54s+mO関数を分けるのは機能毎
機能=関数名にしてそれ以外のことはするな
同じ関数名になったらそれは関数を見直したほうがいい
同じようなことをやろうとしてるはず
そうすれば大体20行以内になる
ならないからって分割する必要はないぞ
0409デフォルトの名無しさん
2016/01/14(木) 12:40:00.28ID:hPr0+y7sなんつー嘘つくねんこいつww
0410デフォルトの名無しさん
2016/01/14(木) 12:52:34.23ID:q8GDBYq30411デフォルトの名無しさん
2016/01/14(木) 12:53:35.54ID:hDrEawni11インチくらいのMBAで作業でもしてるんじゃね?
0412デフォルトの名無しさん
2016/01/14(木) 13:04:14.50ID:q8GDBYq30413デフォルトの名無しさん
2016/01/14(木) 13:13:29.52ID:lO54s+mO行数が機能の目安になるなんて言ってねーだろww
機能を絞れば行数が短くなるって言ってるんだよw
0414デフォルトの名無しさん
2016/01/14(木) 13:23:17.24ID:QLA7f99bたぶんマックブックエアーの略
0415デフォルトの名無しさん
2016/01/14(木) 13:48:12.51ID:kariNJk1自分の場合は10行超えたら不満、30行超えたらリファクタリングを試みる。
ただし機能を外出しするためにPrivateなプロシージャを作ることは極力しない、という方針。
それをしたらただ分けてるだけだからね。
0416デフォルトの名無しさん
2016/01/14(木) 13:51:57.39ID:q8GDBYq3そのSub内で繰り返しのコードが見つかったので
それをさらにそのSubから呼ばれるSub(サブSubと呼ぼう)にしたいとき
単にそのサブSubをPrivate Subにするしか方法はないですか?
理想はそのSubからしか呼ばれないからそのSubの内部にそのサブSubを置きたいのですが。
0417デフォルトの名無しさん
2016/01/14(木) 14:15:35.60ID:hDrEawniJavaScriptだとそういう書き方は無名関数ってのを使ってよくやるけれどね。
VBAで出来るのかね
0418デフォルトの名無しさん
2016/01/14(木) 17:11:17.68ID:ZyMeHqvf推奨はされてないけど こんなのはある
GoSub...Returnステートメント
http://officetanaka.net/excel/vba/statement/GoSubReturn.htm
0419デフォルトの名無しさん
2016/01/14(木) 18:15:46.06ID:QLA7f99bいっそのことモジュール単位で考えて、
ひとつのモジュールの内容をそのSubとサブSubだけにしちゃうとか
メインのSub以外全部Privateにしとけば
他のモジュールにあるSubからは呼べなく出来るじゃん
0420初心者A
2016/01/14(木) 18:50:08.19ID:sGJ4yhp5解像度:1366px×768pxで46行表示可能なんで、
基本、40行以下ならいいかな。1つのプロシージャ
★2点間距離の差(24)
http://ww10.puny.jp/uploader/download/1452764372.xls
Password:abc
そのうち、削除します。
個人用に作成したものなんで、コードはまとまってません。
0421デフォルトの名無しさん
2016/01/14(木) 20:14:23.77ID:os+tW4sXそう言うことができる言語はあるけど VBA では無理
そもそもそんな機能をつけるぐらいならその前に改善してほしいところは山ほどあるだろ
我慢して付き合っていくしかない
0422デフォルトの名無しさん
2016/01/14(木) 20:47:13.19ID:b/ISwWkGコンボボックスからアクセスできる
main1グループはかためてテキストでつなげておくと
まとまり具合でsubルーチンと状況は変わらん
0423デフォルトの名無しさん
2016/01/14(木) 21:18:50.57ID:6VSn4vPy0424デフォルトの名無しさん
2016/01/14(木) 21:59:18.16ID:R121pJF+単一責任原則とDRY原則を守って作って行けば必然的に
1関数辺りのコードはそこまで長くならないだろうし、
手の入れ易い、分かり易いコードになる。
上の人は機能毎に分けると書いているが、どちらかと言えば
1役割1責任で関数を作って、それを組み立てて行くようなイメージかな。
0425デフォルトの名無しさん
2016/01/14(木) 22:09:12.75ID:kKuTLL/9どうすればVBAに詳しくなれますか?
0426デフォルトの名無しさん
2016/01/14(木) 22:15:24.54ID:fK8eMzuy列書式文字列ってなんだ
>>425
詳しくなる必要ないぞ
このスレのおっさんすら1割も理解してるか怪しい
0427デフォルトの名無しさん
2016/01/15(金) 00:07:51.17ID:+wAhFI3fとにかく、WEBから拾ったサンプルプログラムを動かして、さらに改造して動かす。なんでも良いのでVBAでシステムを組んで効率的なアルゴリズムを考える
0428デフォルトの名無しさん
2016/01/15(金) 00:23:44.72ID:OqTq8akB皮肉なものでVBAはある程度理解したら他の言語をやった方がいい。そうしないと超え辛い一線がある。
>>418
それは止めとけ。N-BASIC時代からの負の遺産だ。
他で呼ばれていないからその処理を関数、またはメソッドにしないと言う考え方そのものが
既に構造化言語の考え方から離れていることに気付かないと。
0429デフォルトの名無しさん
2016/01/15(金) 01:04:34.92ID:ln/l6pM0その言い方だとラムダ式も否定しているように聞こえるが、そういう意図じゃないよね?
0430デフォルトの名無しさん
2016/01/15(金) 01:34:55.99ID:qCDtweIzRPGツクール2000 , RPGツクールMV https://tkool.jp/mv/ ( JavaScript 採用 )
WOLF RPGエディター http://www.silversecond.com/WolfRPGEditor/
デュエル・マスターズ Android版 ,i-OS版、公式 http://dm.takaratomy.co.jp/extra/dmapp/entrygate_ds/
デュエル・マスターズ対戦CGI ex
https://web.archive.org/web/20150809154946/http://www53.atwiki.jp/dmsuishinparty/pages/314.html
デュエル・マスターズ(デュエマ)DM ONLINE 1.8a / VanGuard ONLINE 1.5a
https://web.archive.org/web/20150809160254/http://uhyohyohyo.sak ura.ne.jp/hsp.html
ヴァンガード専用ネット対戦ツール【 VanGuard Online 】
https://web.archive.org/web/20150809155032/http://kiimaa.jugem.jp/?eid=61
「カードファイト!!ヴァンガード」のネット対戦ができる公式オンラインゲーム「Cardfight!! Online」 2015年冬スタート
https://web.archive.org/web/20150809153724/http://supersolenoid.blog63.fc2.com/blog-entry-6886.html
遊戯王 Automatic Dueling System
https://web.archive.org/web/20150809164855/http://www3.atwiki.jp/ads-wiki/pages/20.html
遊戯王 デュエル・オンライン
https://web.archive.org/web/20150809171527/http://www31.atwiki.jp/vipdo/pages/15.html
https://web.archive.org/web/20140628005202/http://do.yugioh-portal.net/
ウィクロス( WIXOSS ) WEBXOSS http://webxoss.com/about_en.html http://webxoss.com/DeckEditor/
BG(ボードゲーム)Engine https://web.archive.org/web/20151209080842/https://bgengine.net/
https://web.archive.org/web/20151209172205/http://14owl.hateblo.jp/entry/2015/12/09/011234
アプレンティス マジック:ザ・ギャザリング(MtG)オンライン化 http://homepage1.nifty.com/Q_Q/ap.html
https://web.archive.org/web/20151202202725/http://homepage1.nifty.com/Q_Q/ap.html
0431デフォルトの名無しさん
2016/01/15(金) 01:35:57.90ID:qCDtweIzデュエル・マスターズ的な非電源TCGの 《 オンライン化ツクール系ソフト 》 制作の企画。
例えば、ガチンコ・ジャッジを直ぐにでも導入できる機能を持っておりながら、
当面それを扱わず単純化させておいて、事後的に導入拡張する際に当該システムを
ブロック構造の組み合わせで後付け挿入できるように予めシステム化してあるソフト(エディター)。
既存の非電源TCGを劣らずに再現できるならば大概のニーズに応えられる筈。
デュエマ、ヴァンガ、ウィクロス、ポケカ、デジモン、ゼクス、モンコレ、旧ガンダム・ウォー、ライブオン、ディメンション・ゼロ、シャーマン・キング、カードヒーローなど
のシステムを完全再現できるように設計するけど、他に此のTCGの此のシステムは再現希望とか有ったら書け。
マジック:ザ・ギャザリングの全システムを完全に再現するのは無理だから、此れだけは必用だ!って部分のみリクエストしろ。
個vs個、多数乱戦、チームvsチーム、個vsチームを実現し、P2P通信対戦プラグイン有り。
設計思想は 《 RPGツクール 》 が良いかな? 他に、優れたエディター有ったら挙げてみろ。
個人や企業などのベンダーが提示する開発費(見積もり)で折り合えば、発注する。
↓
エディター群から基本コンセプトを絞り込む(もちろんオリジナルで優れた新ネタが有れば導入する)。
↓
遊戯王OCGに関しては、タッグフォース、ADS、デュエルオンラインを発注先ベンダーに研究させる。
バトスピ、ヴァンガ、デュエマなど発売済みゲームソフトが存在してるTCGはベンダーに研究させる。
↓
各社TCGを再現するテストプレイ ⇒ 更に改良や修正 + コード記述の仕様書(設計書)を作成。
↓
機能制限した下位版を制作しても原則として発売せず + 上位版デュエリ−グ用でサーバー稼動。
↑
下位版を仮に発売した場合の改造および商用利用には、別途で当社との契約が必要。
さ〜て、インド人ベンダーと日本人の翻訳担当SEを見つけよっと!ww
http://wc2014.2ch.net/test/read.cgi/entrance2/1451262577/-16
0432デフォルトの名無しさん
2016/01/15(金) 18:47:37.70ID:Xck1p4iKただそれだけなのに意図通りに動きません
なぜか最初に3秒待ちが発生し、その後にプリンタの設定に移ります。
なぜコードの順番と実行順序が逆になってしまうんでしょうか?
理由と解決方法をご存知でしたら教えてください。
Sub test()
Application.SendKeys "^p", True
Application.Wait Now + TimeValue("0:00:03")
End Sub
0433デフォルトの名無しさん
2016/01/15(金) 19:11:48.10ID:GaD4rXA1Application.SendKeys "^p", True
Application.Wait Now + TimeValue("0:00:03")
を
Application.Wait Now + TimeValue("0:00:03")
Application.SendKeys "^p", True
にしてみたらどうなの
waitでフリーズしてるんじゃ
とおもったが設定画面が出て3秒何もできないようにしたいのだな
loopでdoeventsの時間稼ぎとかかな
まあ何がしたいかはっきりさせてから考えたら
0434デフォルトの名無しさん
2016/01/15(金) 19:45:41.25ID:Xck1p4iK設定画面出てから3秒何もできないようにしたいです。
あとこの現象の理由も知りたいです
0435デフォルトの名無しさん
2016/01/15(金) 19:58:32.80ID:KZg44ccIApplication.SendKeys "^p", True
Application.OnTime Now, "Ueito"
End Sub
Sub Ueito()
Application.Wait Now + TimeValue("0:00:03")
End Sub
これならどうや?
0436デフォルトの名無しさん
2016/01/15(金) 20:05:58.41ID:GaD4rXA1DoEvents
Application.Wait Now + TimeValue("0:00:03")
これで様子が変わったけど
0437デフォルトの名無しさん
2016/01/15(金) 20:17:56.81ID:JNdiAV22それを実現するためにプロシージャを分割しようとすると
元のプロシージャで使ってたローカル変数が使えなくなって困ります。
そのへんみなさんはどう対処してますか?
たくさんの引数を使ってわたしてる?
さらにプロシージャ分割を行うとさらに引数を使い、たらいまわしになってしまうのですが。
0438デフォルトの名無しさん
2016/01/15(金) 20:54:52.19ID:GaD4rXA1ローカル変数が使えなくなるの意味がわからないが
参照渡しで何の損もなく長い部分を外に追い出すことは
できると思うけど
0439デフォルトの名無しさん
2016/01/15(金) 21:52:28.32ID:FuCtvVW7VBAでコードの長さを気にしたら負け
変数宣言・初期化・代入だけで10行くらい使う言語なのだから
短くすることより機能単位にまとまっている方がメンテしやすい
ローカル変数を引数に与えてプロシージャ間でたらい回しするのは
グローバル変数を使うことと同じくらい融通の利かないコードになる
0440デフォルトの名無しさん
2016/01/15(金) 22:10:39.54ID:kSdf5HWG0441デフォルトの名無しさん
2016/01/15(金) 22:21:10.91ID:bPOQG/pm■ このスレッドは過去ログ倉庫に格納されています