VBSで便利なプログラムを作れスレ
レス数が1000を超えています。これ以上書き込みはできません。
素人丸出しお粗末で遅くてもいいので
いますぐ使えるちょっぴり便利プログラムを作れ
(例○○を自動処理してくれるプログラム)
2ch自動書き込みスクリプト・・・ はVBSなんかじゃなくちゃんとしたプログラムが既にあちこちに存在するか
TechNetのHey, Scripting Guy!でも読むとか >>3
自動書きこみをする機能がそもそもまともじゃない 日経ソフトウェアだったかに乗ってたのですが 動きません 助けて
KETA = inputbox("何文字のパスワードを作りますか?","パスワードを生成","8")
If KETA < 1 Then
MsgBox "文字数は0以上でなくてはなりません"
End If
PASS_WRD = "A B C D E F G H J K L M N P Q R S T U V W X Y Z "
MOJISYU_A = MsgBox("アルファベットの小文字を使いますか?",vbYesNo)
If MOJISYU_A = vbYes Then
PASS_WRD = PASS_WRD + "a b c d e f g h i j k m n p q r s t u v w x y z "
End If
MOJISYU_B = MsgBox("数字を使いますか?",vbYesNo)
If MOJISYU_B = vbYes Then
PASS_WRD = PASS_WRD + "2 3 4 5 6 7 8 9 2 3 4 5 6 7 8 9 2 3 4 5 6 7 8 9 "
MOJISYU_C = MsgBox("記号を使いますか?",vbYesNo)
If MOJISYU_C = vbYes Then
'記号
PASS_WRD = PASS_WRD + "! # $ % & ? - _ ~ @"
End If
'指定された条件で配列を作成
PASS_STR = Split(PASS_WRD)
MAX = Ubound(pass_str) 続き
'指定された桁数のパスワードを作成
For i=0 To KETA - 1
Randomize
X = abs(Int((0 - MAX) * Rnd))
PASS = PASS + PASS_STR(X)
Next
InputBox "パスワードが完成しました","生成完了!",PASS >7
どう動かないんだ。
エラーメッセージが出るならエラーメッセージを貼れ。 BASICって何でここまで読む気が起こらないんだろう まぁ、COBOLの冗長さには勝てないがな
'VB
For I = 1 To 10
Next
*COBOL
PERFORM VARYING I FROM 1 BY 1 UNTIL I <= 10
END-PERFORM >>10
字下げが取れちゃってるのも一因ではないだろうか、この場合。 <job>
<script language="vbscript" src="./computer.class"/>
<script language="vbscript">
Option Explicit
Const COMPUTERS = 3
Const DEFAULT_WAKEUP = 2
Dim objComputers()
ReDim objComputers(COMPUTERS)
Dim intNum, i, strHostnames
For i = 0 To COMPUTERS
Set objComputers(i) = New Computer
Next
objComputers(0).setComputer "xxxxxxxxxxxx", "chitose"
objComputers(1).setComputer "yyyyyyyyyyyy", "tomoyo"
objComputers(2).setComputer "zzzzzzzzzzzz", "ayanami"
objComputers(3).setComputer "wwwwwwwwwwww", "maya"
For i = 0 To COMPUTERS
strHostnames = strHostnames & i & ":" & vbTab & objComputers(i).GetHostname & vbCrLf
Next
intNum = InputBox(strHostnames, "WakeOnLan", DEFAULT_WAKEUP)
objComputers(intNum).Wakeup
For i = 0 To COMPUTERS
Set objComputers(i) = Nothing
Next
</script>
</job> Option Explicit
Class Computer
Private pHostname
Private pMACAddr
Public Sub setComputer(strMACAddr, strHostname)
pMACAddr = strMACAddr
pHostname = strHostname
End Sub
Public Sub WakeUp
Dim WSHShell
Set WSHShell = WScript.CreateObject("WScript.Shell")
WSHShell.Run "wol.exe " & pMACAddr
End Sub
Public Function GetHostname()
GetHostname = pHostname
End Function
End Class
これを同じフォルダに入れておく→ttp://www.gammadyne.com/cmdline.htm#wol
vbsもWOLもやってみると意外とできるもんだ。 VBSでダイアログを表示させることってできないものかな?
構造体は使えないはいろいろと細かいところで制約が多い。。 VBSについての質問です
WINDOWSからSolarisにFTP接続してファイルを取得するVBスクリプト。
・ /export/home/backup/mysql/の下にあるファイルを取得
・ /export/home/backup/www/の下にあるファイルを取得
・取得したいファイル名をリスト化、そのリストを読み込んで、
1つのファイルをGET.→FTP切断→FTP接続→ファイルGET→FTP切断の繰り返し
・取得したファイルはSolarisから削除
・日付を管理。最新のを5つだけ残す。一番ファイルを削除
こういったVBSはどうつくればいいんでしょうか? >>18
ここれは便利なスクリプトを作ってくれとお願いするスレじゃなくて、
自発的に自分が書いた物を晒すスレのような気がするんだが。
漏れの場合は、取得したいファイル名を変数にしてして、毎回
FTPスクリプトを生成して実行する方法にしてる。
ちなみにアカウント情報はcsvにしてるが平文で書いてるので
取り扱いに注意してる。PASVが使いたい場合はGNU版を
使う事。
どっちかっつーとWSHスレ向きジャネ?そのまま質問しても罵倒
されるだけだと思うけど。
漏れの場合は、取得したいファイル名を変数にしてして、毎回
FTPスクリプトを生成して実行する方法にしてる。
上司にも同じこと言われましたね、。
なんとなくイメージできても、いざ作るとなると難しくて…
どう作ったらいいのかわからないですね。 >>20
じゃーまず、ここに取得したいファイル名が固定のFTPスクリプトを
生成するVBSを書いてみてよ。
open itsol01
i1125
i1125
get /export/home/backup/mysql/mysql_&YYYYMMDD&.tar.gz
loop
quit
と書いたテキストファイルをコマンドプロンプトで実行したら、指定したファイルは取得できました。
何この糞スレ・・・
低脳にスレ立てさせんなよ・・・ みんな高度なプログラムかくね
このくらいでいいんじゃね?
’びびらせるログオンメッセージ書き込むプログラム?
msgb = InputBox("ビビらせるログオンメッセージ指定")
If msg <> "" Then
Set WshShell = WScript.CreateObject("WScript.Shell")
Call WshShell.RegWrite("HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\LegalNoticeCaption", "ここにメッセージでも", "REG_SZ")
Call WshShell.RegWrite("HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\LegalNoticeText", msgb, "REG_SZ")
WshShell.Popup("終了")
Else
MsgBox("書き込みキャンセルしました")
End If 訂正 ×ここにメッセージでも ○メッセージ
まあなんでもいいんだが・・。 これ便利じゃねえなそれに遊び心だな。
誰かウイルススレでもしよう・・・・。
質問なんだけど
s = 1
test = Array("test")
Set xmlHttp = WScript.CreateObject("Msxml2.SSLHTTPS.3.0")
For i = 0 To s
xmlHttp.open "POST", "test", False
xmlhttp.setRequestHeader "Referer", "test"
xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
xmlhttp.send "test="+test(i)+""
Next
で、https://には対応できない?
Set xmlHttp = WScript.CreateObject("Msxml2.SSLHTTPS.3.0")
を書き換えればいいのかな?解る方書き換え方おせーてください
For i = 0 To s
xmlHttp.open "POST", "https://www.livly.com/reg/rekeep.php?", False
xmlhttp.setRequestHeader "Referer", "https://www.livly.com/reg/rekeep.php?"
xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
xmlhttp.send "kid="+kid(i)+"&+pname="+pnames(i)+"&iname="+iname(i)+"&nname="+nname(i)+"&pprofile="+pprofile(i)+"&iprofile="+iprofile(i)+"&entry="+entry(i)+""
Next CreatoShortcutで
NumLock状態の1をショートカットキーに適用したいのですが
Hotkey="Num 1"
Hotkey="NumLock 1"
どちらでもできません
直接作成は無理なのでしょうか? 俺もNumlockは悩んだ
なんとかいうAPI使って実行ファイル作ったけど無理だった
敗北の想い出が蘇る
最終的にVBA使ったりするんだよな……
VBS単体だと操作の自動化は不便 こんばんは。
C#からVBSのFunction呼び出そうしてるんですが
複数の値を返すことができません。
教えてください。 C#側からvbsを走らせるときにC#側のFor文だと処理するたびに
vbsが走るのでだめでした。
vbs自体が複数値を返す処理をするためにはどのようにすればよいでしょうか。
値は、Excelのセルからとります。 俺が考え付く方法は次の2つ。
1. そのVBScriptの内容をC#へ書き換える。
2. VBScriptをC#プログラム内でホストする。 >>35
は1は実行済みですけどVBSにも全く一緒のコードを書くことになって
かなり冗長的なコードになるんですよ。
2もしたが取り出すとき複数の値をとるほうほうが不明です。 配列を返せばいいのでは?
それが無理なら、C#から戻り値を受け取るオブジェクトを渡すってのはどう。 >>37
配列を返すって考えましたけどVBScriptのリターン文ってありませんよね。
関数名 = 処理
↑こんな感じがリターン文なのかな。 そう。関数内では関数名と同名の変数が存在する。
型は関数の戻り値の型と同じ(と言ってもVBSは常にVariantだが)。
関数を抜けるときにその変数に入っていた内容が戻り値になる。
これはVB系一般で通用する文法。 なるほどね。けど、関数名と同名の変数が定義されてるって時点で
配列とか返せないと思うんですがいかがでしょう。 >>41
情報量が少ないから断定的な判断はできないんですよ。 >>40
Array関数で配列を作れる。
その戻り値を関数名の変数に代入すれば
配列を返す関数の出来上がり。 >>42
調べるのも大事なことだが、試すのだって大事なことだぞ
msgbox a()(2)
function a()
dim b()
redim b(10)
b(2)=100
a=b
end function
こんな感じで出来ない? おおきにおおきに、明日試してみる。
しかし、型なしには驚いた・・・ 型がない訳じゃなく実行時バインディングで表に出てこないだけ JavaScriptなら<script src=a.js
VBSなら<script src=a.vbs ですか? >>48
ああ拡張子はなんでもいいが
typeなりlanguage書こうぜw
それとタグは閉じような
気になってしょうがないw PPPOEをVBSで切断できないですかね?
2つプロバイダ登録してあって、ショートカットで無理やり接続はできたのですが、
なぜだか切断の時に1%くらいの確率で失敗します。
(slect case でやって、引数を保持しているのですが何故か極まれに間違えます)
タスクトレイの接続の所では、何処に繋がっていても切断できますので、せめてこれが
呼び出せればSENDKEYSでなんとかなるんですが…
JavaScriptでの o = new Option(); をVBScriptに書き直すとどうなりますか? ↓デバッグおねがいします
<form id="fm">
<input name="t1" value="てすと">
</form>
<script language="VBScript">
Function bt_onClick()
MsgBox Eval("t" & CStr(1) & ".value")
End Function
</script>
<button name="bt"></button> プリンタの管理ユーティリティにある自動電源ONオプションをタスク
スケジューラで週一自動実行したいんですけど、VBSで可能でしょうか? HTMLのVBSで
<a href="javascript:f();void(0)">
というJavaScriptをVBSで書けますか? MsgBox "<a href=""javascript:f();void(0)"">" >>55
修辞がおかしいので>>56見たいに言われるわけだが・・・ BASP21でダウンロードソフトを作ろうと思っているんですが、
FTPだとFTPサーバーの名前を知らないとアノニマスでも接続できませんよね?
どうすれば良いのでしょうか? >>59
たとえばスーパーに買い物に行きますよね
でもスーパーの住所を知らなければ買い物できませんよね?
どうすれば良いのでしょうか? Iriaとかのダウンロードソフトはどうしてるんでしょうか?
HTTPからでもダウンロード可能なようですが、全くやり方が不明です。
勉強中の身でして、質問が多くなりますが、お願いいたします。
>60
そのスーパーの住所の調べ方を伝授してください
お願い致します >>61
そこらへんのダウンロードソフトはユーザにURLの入力を求めているだろ。 >>61
IPアドレスは32bitしかないんだから、総当たりで! 皆さんご返信ありがとうございます
VBSでこのスレッドを落とす場合
.Connect("pc11.2ch.netのFTPサーバー", "ユーザー(anonymousでいける?)", "パス")
で繋いで
.GetFile("pc11.2ch.netのFTPサーバー/1170492587/*.*", "c:\dowsodata")
となると思いますが、
ここのFTPのサーバー名が解らないと何ともなりませんよね。
62>とりあえずWiki逝って来ます。金曜日の休みに本屋にの行きます!
63>FTPのURLでなくてもダウンできるので不思議なんです
64>そんなことやってたんですか!?
試しにftp://pc11.2ch.net/をIEでやってみたら「ファイル名が正しくないか許可してないぞ!!」
と怒られました。
ギコナビとか、巷にあふれる2CHツールが許可もらってやっているように
思えませんので(失礼…)何かしら打開策があると思うのですが
>>65
ftpが許されてないからです。
httpなら許されてるから、まずはそこから。 >>65
> Connect("pc11.2ch.netのFTPサーバー", "ユーザー(anonymousでいける?)", "パス")
> で繋いで
> .GetFile("pc11.2ch.netのFTPサーバー/1170492587/*.*", "c:\dowsodata")
> となると思いますが、
いいえ違います
pc11.2ch.netのFTPサーバなんてありません 全員がこの後に及んでスレ違いと言い出さないのは、
あまりの事にあきれ果てているから?
>>59
釣られたのかもしれないが、マヂレスしておくと君の考えて
いる事は全くの見当違い。
ttp://www5e.biglobe.ne.jp/~aji/3min/index.html
ここのFTP、DNS、HTTPの所でも読んでくれ。
で、理解したら、これ以上聞かないでね。 すみません、質問を変えます!
<a href="*.dat">download</a>
を、VBSで書くとどうなりますか?
(ダウンロードしますか?と言うダイアログが出ます)
VBSで書いてる途中なのでできれば全部VBSで書きたいんです。
皆さんいろいろ教えていただいてありがとうございました
FTPはファイル交換、DNSはネット接続の中間、HTTPはHTMLを見るため
位の感覚で覚えていましたので、どうやってファイル転送機能なしでファイル転送するんだろう?
ドメイン(biglobe.ne.jp)の部分が同じなので探す方法があるのかと思い、質問しました。
興味が出ましたので、細かく調べようと思いますが、解らないところは「ネットワーク板」で
訊けばいいんですよね?
>>69
ネットワークの勉強ついでにVBSとかクライアントスクリプトも調べて来い
質問の意図が分からなさ過ぎる
きっと用語を正しく理解していない
> 興味が出ましたので、細かく調べようと思いますが、解らないところは「ネットワーク板」で
> 訊けばいいんですよね?
責任もてないので、「はいそうです」とは言わない
調べられなければ調べられるまで調べつくせ >70
すいません、知りたかったのはIriaなどのHPを丸ごとダウンロードしてくるソフトが
どのようにダウンロードをしているのかを知りたかったんです。
よく考えたらこの命令は単純にアドレス指定してアクセスするだけですね、
ちょっとやってみます。
>>71
知らないのは罪では無い。
だが、知らないという事を盾にして、初歩的な事を人に聞きまくるのは迷惑。
>すいません、知りたかったのはIriaなどのHPを丸ごとダウンロードしてくるソフトが
こんな事は最早ネットワークすら関係無い。通信技術板で聞こう物なら、
即氏ねと言われてもおかしくない。
初歩的なhtmlを知っていてIriaを使っていれば、どういう仕組みで丸ごと
ダウンロードしているのか、一般的な知能を持っていればわかるはず。
まず人に聞くな。自分で考えろ。 >>72
html知っててもhttpの仕組みがわかるわけ無いだろ。
>>59
「XMLHTTP VBS」あたりでググればいくらでもサンプル出てくる。
でも、VBSでリストだけ作ってダウンローダーに渡すのがいろんな意味でおすすめ。 >72
ありがとうございます、貴方のおっしゃっているように、私のやろうとしている事は
ネットワークとはあまり関係がありませんね。
>74
XMLHTTPですね、ありがとうございます。
タグ辞典読んだり、「VBS ダウンロード」とか組み合わせてググっても
それに対応出来そうな命令が全く出てこなかったんで、困っておりました。
これでやっと点が線で繋がりました!! 間違えてVB.NETのスレで聴いてしまったのですが、こちらでお聴きすべきでした。
WshShellオブジェクトでURLショートカットファイルを作成する際にファイル内容
に不足があることがわかりました。
例として、たとえばマイクロソフトのサイト
http://www.microsoft.com/japan/msdn/architecture/
などに対して作成すると、IEで作成した場合に作成される処の
[DOC_pagetools]
XMLUSERDATA__Size=・・・・・
XMLUSERDATA=・・・・・
USERDATAURL=・・・・・
という部分が作成されていませんでした。そしてこの部分がないと、クリック
して実行してもIEで表示できないことがわかりました。どうも実行に際して
不可欠の内容のようでした(これはユーザーの同定等を行っているのでしょうか)。
こうした部分をWshShellオブジェクトのCreateShortcutメソッドで作成する
ことは不可能でしょうか。可能とした場合はどのようにすればよいでしょうか?
なにとぞよろしくお願いします。 >>76
[InternetShortcut]しかないけど開けるよ?
ファイルに.urlつけてないとかじゃないの? ドメインユーザーのSID(S-x-x-x....)
から、ユーザーID(Domain\UserID)を知りたいんだけど、
ActiveDirectoryにどんな方法でアクセスすれば良いですか?
ADSIを使うっぽいのですが、いまいちわかりません。 >>77
ご指導ありがとうございます。
おっしゃってくださったことから、今もう一度やってみましたら確かに
今度は動作致しました!
昨日やったときはページが移動しなかったのですが、IE系のトラブルか何か
が重なっていたのかもしれません・・・、お手数おかけしてすみません。
ご指導ありがとうございました。 >>56
だめだ。それは結局JavaScriptを使っているから。
HTML内にVBSオンリーで同等の機能を実装してくれ。 >>80
え?>>55はJavaScriptをVBSで書けるかどうか聞いてるじゃん >>81
VBSが分からないから日本語に着目して自己満足ですか。
はいはい、あなたは正しく理解し、適切な回答をなさいました。
キミにはたぶん質問者が知りたがっていることを回答するのは無理だね。
>>57は漢字が間違ってるし。 >>82
hrefでjavascript関数の後にvoid(0)って一体どんな意味か教えて >>85
いや、void(0)単体の意味じゃなくて、「f()の後に」void(0)を置く意味が知りたいんだ void(0)を付けないでブラウザのアドレスバーに打ち込んでみるとわかるよ >>86
何を期待してるのかわからんが,
とりあえず「f()の後にvoid(0)を置く意味を知りたい」という要求の原因を教えてもらおうか void(0);だけじゃ何の効果も示さないみたいな
f();は今のところ自端末じゃ何も設定されてなくて
voidの()内に後でチェックコードでも書くとか?
今は何を作るか知られたくないから意味のないコードしか書いてないとか 360: 2007/06/16 11:58:31 ??? [sage]
みんな最後にvoid(0)やfocus()を付けるのはなんでだぜ?
361:ぼけなす 2007/06/16 12:12:44 P+YI6MXb
>>360
Location Bar 本来の機能が邪魔することがあるから.
全体を function として記述してもうまくいくようだ.
だからアドレスバーに打ち込んでみるとわかるって言ったのに Excelの2003と2007がインストールされた環境で、以下のVBSを実行すると2007が起動します。
2003を起動するには、どう書けばいいんでしょう?
Set ExcelObj = CreateObject("Excel.Application")
ExcelObj.WorkBooks.Add()
ExcelObj.Visible = True それってWindowsの設定の問題じゃないの?
xlsファイルを2003のExcelで動作するように設定すれば動くんじゃない? >>97
すいません。説明不足でした。
常に2003を起動したいわけではなく、2003と2007を必要に応じて使い分けたいのです。
そういう区別はVBSでは無理なんでしょうか?
あと、regmonでVBS実行中に参照されるレジストリを調べてみたところ、どうやら
HKCR\Applications\excel.exeを見て、起動するアプリを決定しているようでした。
つまり、>>96のような書き方では最後にインストールしたバージョンしか起動できないのです。 2003はたぶん Excel.Application.9 で,2007はしらね
ttp://support.microsoft.com/kb/240794/ja >>99
ありがとうございます。さっそく調べてみたところ、
2000 → 9
2002 → 10
2003 → 11
2007 → 12
のように対応していることがわかりました。そこでプログラムを
Set ExcelObj = CreateObject("Excel.Application.11")
と修正してみたのですが、これではまだ2007が起動してしまいます。
もう少しオブジェクトの扱い方を調べる必要があるようです。 >>101
MSOライブラリを複数登録するんでしょうか?
別バージョンのMicrosoft Office Object Library、Microsoft Excel Object Libraryを参照設定から
追加しようとしたのですが無視されてしまいました。
エラーも出ず、追加も出来ず、よくわかりません。
>>102
excel /regserverを実行してみたところ、Officeのインストーラーが起動してシステムの設定をすべて書き換え、
確かにデフォルトのアプリケーションもオブジェクトも切り替わりました。
が、この方法ではいちいちインストーラーが起動するということで、見栄えがよくありませんし、
時間もかかりすぎてしまいます。元に戻す手間もありますし。
>>103
最終的にはウィンドウを出さずに裏でこっそり処理をさせたいので、(>>96のプログラムの3行目が
存在しないイメージです) 単純にショートカットからExcelを起動して最小化、みたいな処理は、
できれば避けたいのです。後出しですみません。
もう少しヒントを、よろしくお願いします。 「2003に致命的な問題が見つかりますた」と言って強引に2003をアンインストールして2007のみの環境にしる あ、既出でやんの。
(office2000以降)CLSIDが共通だって事は、
オートメーションでバージョンを指定することは出来ない ってことじゃねえの? なるほど、希望バージョンのExcel.exeを先に起動しておいてからGetObjectすればよいのかな? 希望バージョンではない方が既に起動されていても大丈夫? 何をアクティブにして何をさせたいか
ちょっとした選択ミスがすべてを台無しにする事もある
目的と干渉によるけどやりたいなら自己責任で 突然質問ですが…
プログラムに汎用性を持たせるために、一部の変数を外部ファイル化したんですが、
どうすればよいのでしょうか?
実行専用ファイルを作って、その中で変数専用ファイルとメインファイルをPublic変数で繋いで
走らせる事も考えたのですが、できますでしょうか?
って言うかVBSってinclude無いんですか? ini ファイルみたなのをつくって、フツーにopenして読み込めばいいじゃん。 115-116
ありがとうございました。
あとはググって調べます EventQuery.vbs の使い方で教えてください。
というか、挙動不審なんです。
cscript eventquery.vbs /V /FI "ID EQ 564 AND DATETIME GE 03/06/08,12:00:00AM AND USER NE NT AUTHORITY\SYSTEM" /FO CSV /L
↑こういうのを書いたんですが、フィルタ条件のエラーになります。
上記の3つの条件を個別に単発で書けばそれぞれ ちゃんと動くんですが
3つまとめるとダメみたいで・・・。
そういう仕様なんでしょうか?
何か書き方にクセがあるんでしょうか? んなVBSは知らんけどパラメータがtasklistコマンドくせぇな Excelで、セルに入力された文字列のうち、ある部分だけの色を変える、という処理をVBSで行いたいです。
たとえば「A1」のセルに「VBSで便利なプログラムを作れスレ」と入力してあった場合、
そのうちの『プログラム』だけをフォント赤色に変更する、というような感じです。
セル内の文字列すべてだとできるのですが、セル内の文字列の一部分だけを変更する方法を思いつきません。
ExcelのVBAだとCharactersオブジェクトが使えてたけど、これはVBSでは使えないのでしょうか? (←うまいきませんでした)
なにかいいアイデアあったら、誰か教えてください・・・ エラー処理してないんで適当に。
偉い人添削ぷりーず
Option explicit
Const TARGET_WORD = "プログラム"
Dim XL, XLBook, XLRange
Set XL = CreateObject("Excel.Application")
Set XLBook = XL.workbooks.open("C:\Documents and Settings\デフォルトの名無しさん\デスクトップ\book1.xls")
Set XLRange = XLBook.sheets(1).Range("A1")
Dim TargetChr
Set TargetChr = XLRange.characters(Instr(XLRange.value, TARGET_WORD),len(TARGET_WORD))
If Instr(XLRange.value, TARGET_WORD) > 0 then
TargetChr.Font.ColorIndex = 3
End if
XLBook.save
XLBook.close
Set XLBook = nothing
XL.quit よーし、素人丸出しで質問させてくだされ!
とあるCSVファイルがあります。エクセルで展開すると60項目のセルがあります。
その項目で不要項目があるので、消す作業を自動で処理することを考えてます。
*******************************************************
Set objEXCEL = CreateObject("Excel.Application")
Set objBOOK = objEXCEL.Workbooks.open("指定場所と指定.CSV")
objEXCEL .Visible = true
myExcel.Range("B:D").Select
myExcel.Selection.Delete
myExcel.Cells(1,1).Select
********************************************************
サンプルやエクセルマクロ記録などしてそれらを参考にやってみました。
対象CSVは相対パスで指定してあります。
でも、相対パス指定した行でERRになります。
CSVを相対パスで指定して不要項目を削除するには、上記スクリプトを
どのように変更すればいいでしょうか? >>123
レスありがとう。
結局、相対パスはできないということですね。
>>121
ありがとう。書いてもらったのを参考にして思う通りのものができました。
CharactersオブジェクトのStartとLengthの指定の仕方をまちがってたようです。
任意のフォルダを選択すると、コマンドプロンプトのTREEコマンドみたいな枝?罫線+選択フォルダ以下すべてのサブフォルダ名 OR ファイル名を
Excelに書き出す、というのを作ってたんですが、その出力内容のうち、サブフォルダ名の部分だけを色変えたかったのです。 >>122
相対パスとるより絶対パスとるほうが簡単だと思うんだけど・・・?
Excel使うの前提のようなので、こういうのはどうかな。
*******************************************************
Option Explicit
Dim strFilePath
strFilePath = GetFilePathDialog()
msgbox strFilePath
'--------------------------------
' 選択したファイルのパスを取得
'--------------------------------
Function GetFilePathDialog()
Dim objExcel
Dim strFile
Set objExcel = CreateObject("Excel.Application")
strFile = objExcel.GetSaveAsFilename("", "CSV(カンマ区切り) (*.csv),*.csv")
If strFile = False Then Exit Function
GetFilePathDialog = strFile
Set objExcel = Nothing
End Function
******************************************************* >>126
必ず相対パスでないとだめってわけではないのだけど。
クライアントで取り込んだCSVを編集する為なのね。
まあ、やり方で回避できるのだけど。。。
このコードも活用させていただきますです。
ありがとう。 >>122
パスがわからないのならドラッグ&ドロップすればいいじゃない、牛丼がないのなら豚丼をたべればいいじゃない。
>>126
そのファンクションいただき。でもエクセルObjectがないと使えないのかー。 GetOpenFileNameとGetSaveFileNameでぐぐれば、タブンさんぷるでてくるぞ。
APIだからエクセルいらない。 >>128
通常Webから配布しているCSVを加工する為に、VBSを
クライアント配布で色々考えてた。
>>126氏の指摘通りエクセル操作が前提で。
>パスがわからないのならドラッグ&ドロップすればいいじゃない、
それも、そうだと思った強風、豪雨の午後でした orz
>牛丼がないのなら豚丼をたべればいいじゃない。
メタボはいかん。 こんにちは。メッセージボックスの[OK]ボタンが押されるのを待たずに次の処理を
実行させたいときはどうするのでしょうか?
[OK]ボタンが押されなくても複数のメッセージボックス(?)を表示させたいのですが … >>131
2箇所に同じ質問書くと嫌われるよ。マナー違反。今後気をつけな。 初心者なんですけどいいですか?
VBSで二進法の数を十進法にして表示させるプログラムを教えてください。
2進数の仕組みがわかってりゃ簡単だよ。
手計算するのと同じことをVBにやらせればいいだけ。
頭から1文字ずつ取り出して、×2していくだけだろ。
msgbox unko("10101101")
Function unko(ByVal str)
ret = 0
For i = 1 To Len(str)
ret = ret * 2 + CInt(Mid(str, i, 1))
Next
unko = ret
End Function
なんかClntの所でエラー表示が出るんですが(^^; 発投稿っす。どうぞよろしく。
二進法の数を十進法にして表示させるプログラムもう少し簡単にできませんか 142>ありがとうございます
しかしValでも型が一致しませんとでるんですが >>147
お前さんがとてつもない馬鹿で何一つ知らない情報弱者だから
こちらは超能力者にならざるを得ないのをとりあえず理解してくれ。
それを前提とした上で「パソコンでマウスを動かそうとした」とこから
「Valでも型が一致しませんとでる」までの経緯を
お前さんが認識してる「馬鹿」に分からせるように説明しろ。 パソコン上でマウスを動かそうとし、動かしメモ帳を起動して137のプログラムをまずメモ帳に入力し、Clntをそれ以外いじらずValに変更した後、.vbsで保存して、実行しようとするとエラー表示されます >>149
ValをCIntに戻して再実行してみろ。
CIntに戻したときのエラー表示の中で「文字が正しくありません。」
という文言があるのなら、全角スペースが原因。
行の先頭のスペースを全部削除してから再実行してみろ。動くはず。
>>142
CIntをValに直してもよけいに動かなくなるだけ。
VBでは動いても、VBSでは動かん。
>>150
1行目の10101101を文字列ではなく数値で渡しているって想定か?
別に数値で渡しても、勝手に型変換されて動くよ。
>>151
数値で桁が多すぎると(浮動少数表現に変わるから?)エラーでるよ
やっぱりうまくいきません
型が一致しません"Clnt"とでます
パソコンが2000だからとかそういうわけでしょうか
あと素人丸だしですみませんが、一行目の10101101ってどういう意味ですか? ところが2歩進んだと思ってたのに気が付いたら下がっていたという。 >>152
すまんが、前提として10101101をそのままとしていた。
確かに桁が増えたらエラーになる。
16桁か17桁くらいが区切りのはず。
ちなみに浮動少数表現ではなく、対数表現な。
>>153
指摘が間違ってた。
いいか、Clntが間違いだ。CIntだ。
2文字目は小文字のL(エル)ではなく、大文字のI(アイ)だ。
ついでにいうと、二進法で表現した数値を二進数と言うんだ。 すいませんXPでやったらできました
そこで入力した二進数を十進数に変えるプログラムはどうやるんですか?
二進数も十進数も見た目が違うだけで中味は同じ
だから変換は必要ない なんか変な流れ作っちゃってすまん
というか>>161なぜそこに戻る?
inputboxをどこにいれりゃいいのかわかりませn おまい、ぜったいぜったい、ぜぇ〜〜ったい2進数がわかってないだろ。 vbsで16進数を表示。たとえば
msgbox &hFE
とすると、結果は 254 と表示されます。
ほんとは FE のはずです。
こういうバグがあるから気をつけたほうがいいよ。 それはバグ・・・・とは思えないのだが。本来の仕様と違うとか? 意味わからん
FEって表示したいのなら
msgbox "FE"
って書きゃいいじゃん。
自分で &h つけておいて、何言ってんだろ?
msgbox hex(&hfe)
でもいいけど
数値の&HFE と 文字列の"FE" の違いすらわからんヤツがおるのか。
●6月にマネージャパン、月刊アスキー、週刊アスキーの3誌が賞金総額2000万円の「シストレFXグランプリ」を開催
http://system-trading.jp/news/index.php?cID=3
[シストレFXグランプリとは]
クリック証券が提供するFXのデモ取引環境を利用して、システムトレードにチャレンジできるFX取引のグランプリです。
お客様ご自身で作成したシステムトレードの機能を評価する「シストレソフト部門」とトレード収益を競う「トレード部門」の2部門構成となっております。
●5月22日より登録受付開始、6月2日よりグランプリ開始の予定。賞金総額2000万円。
デモトレードの優勝者には賞金三百万円がプレゼントされます。
▼トレード部門
初期資産500万円で、デモ取引のトレード収益を競っていただきます。
●http://www.fx-gp.com/about/
▼賞金総額
■社長特別賞(シストレソフト買取価格) 10,000,000円
●シストレソフト部門賞 1位300万円 2位100万円 3位50万円
●トレード部門賞 1位300万円 2位100万円 3位50万円
●前期MVP賞 50万円
●後期MVP賞 50万円 InputBox関数使って、入力値を得たいんですが、
255バイト以上の入力値って無視されるのでしょうか?
解決策があれば教えてください。。
InputText = InputBox("文字列を入力してください")
Dim Fs
Set Fs=CreateObject("Scripting.FileSystemObject")
Set newFile = Fs.CreateTextFile("0000test0000.txt",True)
newFile.WriteLine(InputText)
ユニコードで254文字+CR+LFの、最大値を超えています。 VBScriptを使って、HTTPステータスコードを取得する方法を探しています。
ある任意のWeb画面に対してスクリプトでリクエストを行い、HTTPステータスコード(200 ok 等)を
取得する方法はありますでしょうか。
どなたかご存知の方がいらっしゃいましたら、ご教授下さい。 すいません。スレ違いだった為、WSHのスレに移します。 vbsで、フロッピーのフォーマットを確認なしで実行
する命令ありますか?A:\固定で。 VBSにはファイルにアクセスする命令すらありませんよ それを言うならC言語にもファイルにアクセスする命令は無いな >>183が便利そうなコードを書きまくるそうです>< とりあえずExcelAddinをインスコするコードとかlnk右クリックでリンク先ディレクトリ表示とか
あるけど需要あるか? test1.bin
test2.bin
test3.bin
これらファイルを選択状態にして、VBSファイルにD&Dすると、
ファイル名順にソートして、1つのファイルに結合するには、どうしたら良いのでしょうか?
1つのファイルを、指定サイズに自動分割するVBSはできたのですが、
その逆のことができるVBSファイルを作りたい。。。
ADODB.Recordset
ADODB.stream あたりを使えば可能? CIM_DataFileクラスを用いて、ファイルの各種情報を取得したいのですが、
「説明」のプロパティを取得するときに指定するプロパティ名が分かりません。
具体的には、例えばソリティア(C:\WINDOWS\system32\sol.exe)を
右クリックして表示されるプロパティの「バージョン情報」タブの2行目に
「説明:Solitaire Game Applet」と表示されますが、この値を取得したいのです。
ファイルバージョンなどは、「Version」プロパティで取得できております。
ご存知の方、ご教示お願い致します。 189です。
カキコするところ間違えたみたいなので、移動します。スミマセン。 >>186-187
作ってみた。
sdir = "C:\temp\" '出力先フォルダ
soutfb = "output.bin" '出力ファイル名
set osh = createobject("wscript.shell") 'シェルオブジェクト
set ofs = createobject("scripting.filesystemobject") 'ファイルオブジェクト
set oarg = wscript.arguments '引数オブジェクト
stmpf1 = "temp1.txt" '一時ファイル
stmpf2 = "temp2.txt" '一時ファイル
'ドラッグ&ドロップしたファイル名を一時ファイルに格納
set out = ofs.createtextfile(sdir & stmpf1, true)
for each s in oarg
out.writeline s
next
out.close (つづき)
'ファイル名のリストをソートして一時ファイルに格納
osh.run "cmd /c sort " & (sdir & stmpf1) & " > " & (sdir & stmpf2), 0, true
set oin = ofs.opentextfile(sdir & stmpf2)
s = oin.readline
'バイナリファイルのコピー
ofs.copyfile s, (sdir & soutfb)
do until oin.atendofstream
s = oin.readline
osh.run "cmd /c copy /b " & (sdir & soutfb) & "+" & s & " " & (sdir & soutfb), 0, true
loop
oin.close
'一時ファイルの消去
ofs.deletefile sdir & stmpf1
ofs.deletefile sdir & stmpf2
msgbox "OK"
↑以上、実行時は行頭の空白を半角に。 copyは性能的にしょうがないかもしれんがsortぐらい自前でやれよw VBSにて、SNMP情報の取得を考えてるんですが、
wsnmp32.dll を利用することはできないんでしょうか?
dynwrap.dll というラッパー?も使えないのでしょうか set shell32 = createobject("shell.application")
set fso = createobject("scripting.filesystemobject")
function recyclebin(pathname)
> path = fso.getparentfoldername(pathname)
set there = shell32.namespace(path)
set submenus = there.items.item(fso.getfilename(pathname)).verbs
I = 0
for each method in submenus
if strcomp(method, "削除(&D)") = 0 then
submenus.item(I).doit()
end if
I = I + 1
next
end function
recyclebin wscript.arguments(0)
ファイルやフォルダをドラッグアンドドロップすると、
ごみ箱に移すスクリプト。deletefile とかは
永遠に消えちゃうので不安だ...。 それ、ごみ箱のショートカットと比べてどう便利なの? ファイルをドラッグアンドドロップていうのは
サンプル動作のためで、
関数をスクリプト内で
deletefile の代わりに使います。 hail2u.net - Weblog - VBScriptでMSN Messengerの表示アイコンを変更する
http://hail2u.net/blog/coding/change-msn-messenger-display-picture-by-vbscript.html
このMessenger.UIAutomation.1を使って他にも色々出来ないかな、と思って
ドキュメントを探したんですが、どうにも見つからず…。
どなたか詳細ご存じの方いらっしゃいませんか?
Samurizeと組み合わせて、デスクトップから一発で名前とかステータス変えられたら… VBScriptとかJScriptで地味にWSHのプログラム書いてきたのに・・
IronPtythonなんてどうでもいい。
ていうことでVBScriptやJScriptを開発する統合環境みたいなツールってないの?
秀丸で書いてるんだけど、文法チェックや小文字大文字変換で不便でしょうがないんだけど。 そんな愚痴をこのスレで言う理由は・・・つまり
VBSで作れと? うん。昔からのVBSやJSユーザを生き伸ばすためにも言語拡張すりゃいいのにとおもって。 一応残るだろうけどVBSはもう進化しないでしょ。
同系としてVBAは今のところ代わりが無いから多少変わるかもしれんが。
WSHは見捨てられた子・・・
JScriptつーかJavaScriptならEclipseで使えると思うけど、それじゃダメ?だよね(w いや。わては、WSHとして使いたいんや。
でも、VisualWebDeveloperExpressEditionにWSH用のテンプレートがあるみたいだ。
インスコしよっと。 俺はサクラエディタでしこしこ書いとるわ。
>でも、VisualWebDeveloperExpressEditionにWSH用のテンプレートがあるみたいだ。
そんなもんがあるんか。そのうち入れてみよっと。
a.vbsで定義したFunctionをb.vbsで使いたいが、
どうやったらいい?
aとかbって何?a.vbsとb.vbsってこと?
つWindows スクリプト ファイル (.wsf) レスしたら>>207の意味判ったw
wsfファイルを作ってvbsファイルをインクルードしたらいいよ。
もしくはスクリプトファイルを読み込んでExecuteGlobalするか。 テーブルから14桁で取得した日付(例:20081210140059)に、
+1秒した日付(20081210140100)を取得するにはどうしたらいいですか?
windowsアクセスログの履歴がデータとして格納されているテーブルから最新利用履歴日付を取得し、
そこから1秒後の日付でwindowsアクセスログを再検索したいのです。
>>211
レスありがとうございます。
秒計算のできる関数を発見したので、試してみます! VBSのことでお助け願いたいのですが…どなたかお願いします! 助けて下さい。
25個のエクスプローラを起動させるようにプログラミングしたものが
あるのですが、3の倍数のエクスプローラーが起動したときのみに
ツールバーを表示させるようにしたいのですが
どのように、命令すればいいのでしょうか・・・。 >>215
助けて下さい。
25本のチンポを勃起させるようにプログラミングしたものが
あるのですが、3の倍数のチンポが勃起したときのみに
包茎を表示させるようにしたいのですが
どのように、命令すればいいのでしょうか・・・。
ってくらいいみふ >>215
たとえば 26475
この各桁を足すと 2+6+4+7+5 = 24
さらに各桁を足す 2+4 = 6
この値 6 が 3 の倍数ならば
26475 は 3 で割り切れる。 すいません ど素人なんですがよかったら教えてください
CreateObject("WScript.Shell").Run で実行したバッチファイルを停止するスクリプトってどう書くんでしょうか?
>>220
ぱっと思いついたのがそのDOS窓掴んで
sendkeyで^C→Yを送るくらい
もっと賢くてスマートなのは他の有識者に任せる Dim fileXML, objXML
Dim node, item, mesg
fileXML = "35640864.xml"
Set objXML = WScript.CreateObject("MSXML.DOMDocument")
objXML.load(fileXML)
For Each node In objXML.getElementsByTagName("Message")
mesg = ""&
id = node.getAttribute("SessionID")
For Each item In node.childNodes
If mesg <> "" Then
mesg = mesg & ","
End If
mesg = mesg & item.nodeName & ":" & item.firstChild.nodeValue
Next
WScript.Echo mesg
Next
XMLの子ノードが;;表示されない・・・
だ・だれか・・・ >>220
そのバッチファイルのタイトルをtitleコマンドで適当に一意なものに変更しておいて
一致するプロセス取得してkillすればいいんじゃね? >>222
表示できたかな?
<?xml version="1.0" encoding="UTF-8"?>
<root>
<Message SessionID="0001">
<Icon>情報</Icon>
<Text>情報メッセージ</Text>
</Message>
<Message SessionID="0002">
<Icon>警告</Icon>
<Text>警告メッセージ</Text>
<Param>パラ1</Param>
<Param>パラ2</Param>
</Message>
</root> BASP21はSMTP/POP3サーバ、MAPIはExchangeサーバに使うものだよ IEでリアルタイムにURLを取得するVBSを書いています
流れはIEが起動してないとき実行すると”IEが表示されていません”と
メッセージを出し終了
IEが起動しているとき実行するとバックグラウンドで
10秒ごとのWebページのURLを取得しIEを終了させると今まで取得したURLを
メッセージで表示し終了
こんな感じで書いたんですが "IEを終了させると今まで取得したURLを
メッセージで表示し終了" この部分がうまく書けません。
具体的にはIEが終了するとオブジェクトが空になるはずなのでその辺をついて
わざとエラーを起こしエラー番号を取得しそのエラーだったら終了
させるような感じで書いたんですがちゃんと動作してくれません
ご教授お願いします
コードです
Dim object1, object2, objectie, ieurl, loopflag, hako
loopflag = 0
Set object1 =CreateObject("Shell.Application")
set object2 = object1.Windows()
do While loopflag = 0
for each objectie in object2
hako=objectie.LocationURL
ieurl = ieurl & hako & vbCrLf
hako=""
next
wscript.sleep(10000)
on error resume next
if objectie.LocationURL=""
end if
if err.number=424 then
exit do
end if
msgbox ieurl
loop
If hako = "" Then
MsgBox "インターネットエクスプローラーが開いてないか、閉じました。"
If ieurl <> "" Then
MsgBox ieurl
End If
End If
VBscriptでiTunesをアクティブにしたあとCtrl+Alt+5、Ctrl+Fと
入力させフルスクリーンにしたいのですが、アクティブに
なったあとの入力を受け付けないようなのです。
なぜきちんと動かないのかお分かりになるかたいらっしゃいませんか?
以下スクリプトです。
dim objShell
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run "iTunes.exe"
WScript.Sleep 10000
objShell.AppActivate "iTunes"
WScript.Sleep 1000
objShell.SendKeys "^(%5)"
WScript.Sleep 1000
objShell.SendKeys "^f"
EXCEL VBA みたいにステップインできるソフトってない? コントロールパネル→ネットワーク接続の「ワイヤレスネットワーク接続」を右クリックして「修復」
これをVBSで実行できますか? >>230
私もこのような現象がありました。
VBScriptでキーを送るのと、
物理キーボードでキーを送るのは、
別物として扱われる事があるのでしょうか? vbsの管理者実行ってできるんかな?
インスコフォルダ削除のスクリプトとかをVistaで実行すると、
アクセス拒否されるじゃん?
あぁゅぅのって、管理者実行でアクセス出来ると思うんだけど・・・
分かるヤツいない? Vista の UAC の話なら
set Shell = CreateObject("Shell.Application")
Shell.ShellExecute WScript.FullName, "MyScript.vbs", null, "RunAs"
のように ShellExecute に RunAS パラメタを付ければ管理者権限で実行できるらしい
上の例は一般権限のスクリプトから外部の別のスクリプトを管理者権限で呼び出す例だが
WTL のセットアップスクリプトに、フラグ制御で自分自身のスクリプトを再度管理者権限で呼び出したり、
UACの判定とかのやり方が入ってるから詳しくはそちらを見てくれ おぉw
レスサンクス!(・∀・)
でも、またエラーでたな・・・
二個くらい出てきて、一個目がコレ↓↓
━━━━━━━━━━━━━━━━━━━━━━━━
スクリプト: C\Users\*****\Desktop\\TEST.vbs
行: 14
文字: 1
エラー: 書き込みできません。
コード: 800A0046
ソース: Microsoft VBScript 実行時エラー
━━━━━━━━━━━━━━━━━━━━━━━━
二個目が↓↓
━━━━━━━━━━━━━━━━━━━━━━━━
スクリプト ファイル"C\Windows\system32\My Script.vbs"
が見つかりません。
━━━━━━━━━━━━━━━━━━━━━━━━
実行環境はWindowsVista HomePremium
テストでiTunesのフォルダを指定してやってみたが何故かエラー
レス↓ソースでし
ソースに問題があったら指摘してくれ
以下ソース↓↓
━━━━━━━━━━━━━━━━━━━━━━━━
set Shell = CreateObject("Shell.Application")
Shell.ShellExecute WScript.FullName, "MyScript.vbs", null, "RunAs"
Dim objFileSys
Dim strDeletePath
Set objFileSys = CreateObject("Scripting.FileSystemObject")
strDeletePath = "C:\Program Files\iTunes"
objFileSys.DeleteFolder strDeletePath
set objFileSys = Nothing
━━━━━━━━━━━━━━━━━━━━━━━━━
長文失礼..........。 えー、MyScript.vbsは単なる例なので当然実行はできない
あえて全部書くなら適当だけどこんな感じ
Dim bElevated
bElevated = False
If WScript.Arguments.length >= 1 Then
If WScript.Arguments.Item(0) = "/elevated" Then
bElevated = true
End If
End If
set Shell = CreateObject("Shell.Application")
If Not bElevated And Shell.IsRestricted("System", "EnableLUA") Then
Shell.ShellExecute WScript.FullName, """" + WScript.ScriptFullName + """" + " /elevated", null, "RunAs"
WScript.Quit(0)
End If
Dim objFileSys
Dim strDeletePath
Set objFileSys = CreateObject("Scripting.FileSystemObject")
strDeletePath = "C:\Program Files\iTunes"
objFileSys.DeleteFolder strDeletePath
set objFileSys = Nothing
お、一個エラー消えたヽ(・∀・ )ノ
まだ
━━━━━━━━━━━━━━━━━━━━━━━━
スクリプト: C\Users\*****\Desktop\\TEST.vbs
行: 18
文字: 1
エラー: 書き込みできません。
コード: 800A0046
ソース: Microsoft VBScript 実行時エラー
━━━━━━━━━━━━━━━━━━━━━━━━
のエラーが残ってまうな・・・;;
んー、このソースに使ってるスクリプトとかってどこで勉強できる?
URLor本トヵあったらそっちも覗いててみたいんだけど・・
ご指摘感謝感謝(´;ω;`人) 800A0046 ってのはアクセス権限のエラーなので、既にスクリプトの問題では
ないような気がする
最初、アンインストール時に残ったゴミでも削除するのかと思ったんだけど
まさかアンイントールせずにフォルダをいきなり削除しようとしてるわけではないよね
C:\Program Files\iTunes
にサービスなどのプログラムがあってまだ使われているなら権限の問題とは
関係なくフォルダの削除は無理だと思うけど あぁー・・やっぱそうなるのかー
http://www.whitire.com/vbs/tips0186.html
コレとかで停止してからってのは駄目なん(・ω・`)? ダメというか無理やりのファイル削除は、レジストリや作業ファイルのゴミが
残る可能性が高い
レジストリや作業ファイルのゴミがあると同じアプリを二度とインストールできなくなったり
最悪OSが不安定になったりするの普通やるものではない
そもそも何故正式な方法でアンインストールしないの? やっぱそうかー;;
OS犠牲にしてまではしたくないな・・・
デスクトップにダイアログ常時表示させといて、選択した必要ないファイル・ソフトの削除を
チャチャッ♪っと済ませられるようにしたいなぁとか、他にも活用できそうだしねー・w・
http://www.whitire.com/vbs/tips0113.html
一応、知恵の糧になるようなものをうpってみる
レジストリのゴミ削除できるかなぁーって(ノ∀`*) 2つのフォルダを比較して
差分ファイルを指定フォルダにコピーすることはvbsで可能? >>246
vbs自体にハッシュ比較の機能がないから無理
同じ名前、サイズ、タイムスタンプくらいの判定でいいなら当然可能 >>247
さすがにスクリプトでハッシュ比較すると
処理遅いだろうからそれで十分です
ありがとう、今から作ってみます 一度は全部読まんとハッシュも出ないから、全比較でいいんじゃね?
比較するにしてもfcとか使ったほうが早いけど。 VBSからIEを起動して、VBSでIE内のボタン押下処理した後、
「セキュリティで保護されていない接続へリダイレクトされようとしています。
現在のサイトへ送信中の情報は、セキュリティ保護されていないサイトへ再送信される可能性があります。続行しますか?」
っていうダイアログが表示されるのですが、このダイアログの「はい」のボタンを押下するには、VBSではどのようにすればいいのでしょうか? 処理に時間がかかる場合で
プログレスバー表示的なことが出来ればいいのだけど
みんなはどうしてる?
IEを使う方法はわかりにくいし しとけよじぇねーだろ!
したらいいんじゃないですか!だろw 。
||
ヾ(o゚ω゚o)ノ゙ プニプニ!プニプニ!
||
ヾ(o゚ω゚o)ノ゙ 他板から乱入だ!プニプニ!
||
ヾ(o゚ω゚o)ノ゙ プニプニ!プニプニ!
||
O >>250
キー送信でAltとかTabとかSpaceとか送信して押せないかね。
>>251
HTAでプログレスバー作るのは?
IE(HTML)でやるよりソレっぽく仕上がるけど。 なんか完全に過疎っているな。
最近、業務での単純作業をvbsで作りこんでみて、使い勝手いいと気づいたんだが。
てか、いつもメモ帳で作っているだが、補完機能とかある軽量の開発環境ツールあったら教えて。 補完機能なんて使うほどのものじゃないからなぁ。
VisualStudioが一応対応してるんじゃあないか?
基本的にはVBAやVisualBasicに近いものだし。
TeraPadで色付けワードにVBScript関係のモノと
WSH関係のモノ追加したのでいつも書いてる。 IEの操作について質問です。
下記のように和英辞書サイトで『空港』という単語を検索するようにしたいのですが、
なぜかテキストボックスに文字が入力されません。
どうしたらいいか教えてください。
Option Explicit
On Error Resume Next
Dim strUrl
Dim objIE
strUrl = "http://dictionary.goo.ne.jp/je/"
Set objIE = WScript.CreateObject("InternetExplorer.Application")
If Err.Number = 0 Then
objIE.Navigate strUrl
objIE.Visible = True
Else
WScript.Echo "エラー:" & Err.Description
End If
Set objIE = Nothing
objIE.document.all("MT").value = "空港"
>>260
指定方法が違う
対象のHTMLソースを確認しろ >>260
Dim objIE
Set objIE = WScript.CreateObject("InternetExplorer.Application")
objIE.Visible = True
objIE.Navigate "http://dictionary.goo.ne.jp/je/"
WScript.Sleep(5000)
objIE.document.dict.MT.value = "空港"
objIE.document.dict.submit() >>261-262
回答ありがとうございます。
http://www2s.biglobe.ne.jp/~iryo/vba/IE/index00.html
のサイトを見てフォームの指定をやってみたのですがvbaとはまた違うのですかね?
vbsのIE操作のやり方が載っているサイトなどありましたら教えてください。
>>263
基本は一緒でHTMLの知識
最初の>>260で動作しない理由は document.all("MT") では単独のコントロールを指定しないため
よって>>262ではフォーム名を入れて document.dict.MT で指定している
スレチだよな・・・ ワード、エクセル、画像、HTMLファイルなどを指定した順番に印刷し、
各ページにページ番号をつけることってvbsで作成可能ですか?
可能だったらどのように作成するかヒント教えてください。 ワードとエクセルならそういうフリーソフトがすでにあるけどな
ページ番号がついたかどうかは知らんが >>265
VBSでそういう横断的でかつ細部に至る要求なんて書けたかなってかんじ
ユーザインタフェースへの入力を自動化するのならuwscとかあるんだけど 文字列連結.vbs
Function J(arrArg)
J = Join(arrArg, "")
End Function
Wscript.Echo J(Array(1, 2, 3, 4, 5, "A", "B", "C"))
&記号に疲れたひと用 どこで聞いたらいいのかわからないので、スレ違いを承知でお聞きしたいのですが、
現在Windows 2003 Serverメインの環境でActive Directoryの運用中です。
ユーザアカウントの新規作成は全て手動で行っているのですが、何とかWSHやADSIを使って
CSVファイルから一括で登録処理を行えるようにしたいと思っています。
しかし、プログラムはおろかコードやスクリプトなど今まで全くさわったことが無いので
ネット上で公開されているサンプルなどを見ても、何を意味しているのかがほとんどわかりません。
勉強するに当たって、参考になる書籍やサイト、別スレなどがあればアドバイスをお願いします。 >>270
ありがとう。
そこも見たんだけど、そもそも一つ一つのメソッドがどういうオブジェクトを生成してるのかや、
何故それをしなければならないのか、っていうところからわからなくて困ってる。
Set objCommand = CreateObject("ADODB.Command")
なんかはドメコンに接続するときにおまじないのように書かれてるけど、これに限らず何をするためのものかわからないレベル。
例えば上記の構文だと、objCommandって変数にどういうオブジェクトが当て込まれてるのかや、
その内容を確認する方法すらわからなくて、ただただ途方に暮れてる。
Scripting guysなんかも読んでるけど、突然理解が追いつかなくなるんだ…
才能無いから諦めた方がいいのかと悩んでしまう >>271
あきらめるの早すぎ。
ADOは一度使い方を覚えれば使いまわせるよ。
VBSでWSHやる前に、
ExcelのVBE環境で色々試してみてはどうか?
ADOもADSIも使えるよ。
デバッガで変数の中身を確認できるので、イメージが膨らむはず。 >Set objCommand = CreateObject("ADODB.Command")
>なんかはドメコンに接続するときにおまじないのように書かれてるけど、これに限らず何をするためのものかわからないレベル。
>例えば上記の構文だと、objCommandって変数にどういうオブジェクトが当て込まれてるのかや、
>その内容を確認する方法すらわからなくて、ただただ途方に暮れてる。
気にすんな
ほとんどの自称プログラマはそこらへんのサンプルコピペして
意味も判らず使ってるだけのレベル
わからんでもこねくりまわしてるうちにとりあえず動く
全部判って書いてる香具師の方が少数だから安心汁
>>272>>273
アドバイスサンクス。
3ヶ月程悩み続けてたんだが、プログラムとスクリプトの違いすらわからないくらいに初心者なもんで、
参考になる本も探してみたけど、どれも求めているものとは違うから挫けかけてた。
ExcelとかAccessのVBAだと、変数の宣言とかコマンドのプロパティが若干違ってくるから
あえて敬遠してたけど、そっちでも色々試してみる。
もっとも、WSHだと変数はWScript.Echoで確認できるけど、生成したオブジェクトの確認方法が不明だったから
コピペしてきたサンプルが何のために何をしてるのかわからなくて、
その度に途方に暮れてたけど、ちょっと頑張れそうな気がしてきた。
また分からなかったら初心者丸出しの質問をするかもしれないけど、
とりあえず明日から改めて出直してくる。
本当にありがとう!! キーワードと "MSDN" をあわせてググレばたいていの説明は出てくる。 文字列の一部をコメントアウトする.vbs
Wscript.Echo "" _
& "aaa" _
& "bbb" _
& C("" & "ccc" _
) & "ddd" _
& ""
Function C(strArg)
C = ""
End Function
rem とかじゃだめなのさ 文字列の一部をコメントアウト2.vbs
Set objDic = CreateObject("Scripting.Dictionary")
i = 0
i = i + 1 : objDic.Add i, "cmd.exe /c"
i = i + 1 : objDic.Add i, "("
i = i + 1 : objDic.Add i, "dir /w"
rem i = i + 1 : objDic.Add i, "|"
rem i = i + 1 : objDic.Add i, "sort /r"
i = i + 1 : objDic.Add i, "|| (pause & exit)"
i = i + 1 : objDic.Add i, ")"
i = i + 1 : objDic.Add i, "&& (echo well done. & pause)"
strCommandLine = Join(objDic.items, " ")
CreateObject("Wscript.Shell").Run strCommandLine
だれかEXECメソッドの使い方教えてください;;
ググっても分からない。。 wordの.docファイルに埋め込まれた画像をbmpで取り出すプログラムを書いています
Office2003以降のwordがインストールされているPCからだとうまく取れたのですが
OfficeXP以前のwordがインストールされているPCだとうまく動きません
どちらもword2000形式で保存されているファイルに対して操作しています
OfficeXP以前のwordがインストールされているPCでも動くように書くにはどうすればよいですか vistaでファイルを選択するためのダイアログ ボックスを表示するには?
Hey, Scripting Guy! にあった
Set objDialog = CreateObject("UserAccounts.CommonDialog")
objDialog.Filter = "All Files|*.*"
objDialog.InitialDir = "C:\"
intResult = objDialog.ShowOpen
If intResult = 0 Then
Wscript.Quit
Else
Wscript.Echo objDialog.FileName
End If
では1行目でエラー
ActivXコントローラはObjectを作成できないそうです >>282
http://technet.microsoft.com/ja-jp/scriptcenter/ee695752.aspx
>UserAccounts.CommonDialog オブジェクトは、セキュリティ上の問題から Windows Vista で廃止されました。 数万件のデータをテキストへの書き出す方法で、軽くて早くしたいわけだが
書き出し方法としては
・データごとに直接書き込み
・変数に格納してから一括書き込み
・クリップボードに格納してから一括書き込み
の他になにかある?
配列に格納してエクセルシート経由くらいしか思い付かない 複数箇所のフォルダ管理だからDB化は難しいかな
そして変数もクリップボードも足りなくて使えないや
数万件ファイル名に各々文字列連結して全部つぎ込むとかムリゲ
txtに書き出すなら配列に格納する意味無さそうだしなあ クリップボード出来ないことはないが、テキストに書き出す20倍くらい時間かかってる
IEクリップボードのせいか?
VBなら早いのに
バックグラウンド処理するのにこんなに時間も負荷もかかるなら、クリップボードは使えないな 質問です!
クリップボード使ってテキスト書き出しってど〜やるの? IE使うのが一般的かな
上がクリップボードから読み出し
下がクリップボードへ書き出し
書き出すときはクリップボードをクリアしてから格納すること
Microsoft Forms 2.0設定できればクリップボードも早くなるかもしらんが
objIE.document.parentWindow.clipboardData.GetData( "Text" )
Document.parentWindow.clipboardData.setData "text","" いや、その後に「一括書き込み」するんでしょ?そっちのやり方。 何を聞きたいのかよくわからんが・・・
objOutFile.WriteLine strDate で書き込めるだろ
改行したいならクリップボードに格納するときに VBCRLFでつなげればテキストには反映される いや、なにか「速い」機能があるのかと思って・・・
VBだと速いの? そういうことか
前エクセルVBA使ってたときは、クリップボード経由のデータ貼り付けってかなり早かった気がする。
とはいえエクセルだと配列→セルが強力すぎるからあんまり使わないんだけれども。 Set objFSO = CreateObject("Scripting.FileSystemObject")
set objOpenFile=objFSO.OpenTextFile("C:\hoge.txt",1,false)
msgbox "ロックちゅ〜"
なんかもんだいありまっか? WshShell.Environment("USER").Item("UNKO") = "うんこ"
Wscript.Echo WshShell.ExpandEnvironmentStrings("%UNKO%")
結果:%UNKO%
値を「うんこ」に設定できません。自分で自分の環境変数は変えられないのですか? 以前、自動生成するファイルの拡張子に
.unk ってのを使ってたら(内容不明の場合に作るファイル)
「別に拡張子はナニつかってもいいけどさぁ
"うんこ"ってのは、ちょっとどうなのよ」
て先輩に言われたことがあったのを思い出した。 shine.unko
こんな感じですか?わかりません。 >>304
Lotus Notesなんかも添付ファイルが理解できない時に吐くみたいだね>unk
個人的には3文字中「un」で2文字使うのはどうかと思うので
「UKN」の方が好きだけど(天気図等で使うが少数派…)
いっそのこと3文字にこだわらずに拡張子を「.unknown」にしちゃえば?
(dir /xなど)8.3文字表示で見ると、ちゃんと「.unk」になるし >>308
なるほど、 .ukn か。
.unknownでもまぁ問題は無い気がするが
.unk でも十分伝わると思うんだ。
うんこって読む奴がうんこ。 むしろunkでうんこって読める先輩って
kwsk、ktkr、wktk、ksk、gkbrみたいなアブジャド系表記に慣れてる2chねらなんじゃないのかw 他コンピューターのパスを返す時に、ネットワークドライブ(\A〜Z)ではなく、
\\サーバー名\フォルダ〜というようにする方法はありますか? おまえ、わざと意地悪してるだろ
同僚や部下から嫌われるタイプだな MsgBox "Happy New Year !" ゴサっ
--------------------
dim i
dim j
for i=1 to 1000
j=j+0.1
next
MsgBox j
TEXTファイルから
特定の文字や特定の行を抜き出す
スクリプトってない?
三次元測定機からCADに
XYZ手動で打ち込むのもういやになった。 >>320
ある。というか簡単だよ
テキストファイルを開いて1行ずつ読みながら正規表現等でチェックしていくだけ
2行以上に渡るデータだと少し面倒だけど大した手間ではない
でも仕様によってはわざわざ作らずに
SakuraエディタなどのテキストエディタのGrep機能で充分だったりするけど
textファイルをドラッグアンドドロップで
DIM LOC1= LOCATION OF CIRCLE CIR1 UNITS=MM ,$
GRAPH=OFF TEXT=OFF MULT=10.00 OUTPUT=BOTH HALF ANGLE=NO
AX NOMINAL +TOL -TOL MEAS DEV OUTTOL
X 469.343 0.050 -0.050 469.343 0.000 0.000 ---#----
Y 2.106 0.050 -0.050 2.106 0.000 0.000 ---#----
Z 412.000 0.050 -0.050 412.000 0.000 0.000 ---#----
D 53.996 0.050 -0.050 53.996 0.000 0.000 ---#----
DIM LOC4= LOCATION OF CIRCLE CIR4 UNITS=MM ,$
GRAPH=OFF TEXT=OFF MULT=10.00 OUTPUT=BOTH HALF ANGLE=NO
AX NOMINAL +TOL -TOL MEAS DEV OUTTOL
X 386.074 0.050 -0.050 386.074 0.000 0.000 ---#----
Y 2.461 0.050 -0.050 2.461 0.000 0.000 ---#----
Z 577.913 0.050 -0.050 577.913 0.000 0.000 ---#----
D 44.971 0.050 -0.050 44.971 0.000 0.000 ---#----
↑こんな感じの中身を
こんな風に↓
/469.343/2.106/412.000
/386.074/2.461/577.913
XYZを/に置き換えて
さらにXYZのNOMINALの数字だけを残して
さらにデスクトップにtextで保存されるようなやつです
難しいですね、すいません >>322
とりあえず作ってみた
' [仕様]
' NOMINALの位置は固定(XYZの直後)
' X,Y,Zはこの順番で必ず出現
' 数値間はスペース区切り
' 出力ファイルはデスクトップに元ファイル名(拡張しなし)_XYZ.txtというファイル名で出力
Dim fso,wshShell,regXYZ
Dim inFilePath,outFilePath,inFile,outFile,sDeskTopPath,sLine,retMatches
Dim X,Y,Z,isOutput
Const REG_XYZ_NOMINAL = "^([XYZ]) +([^ ]+) " ' 先頭XYZ の後空白があり次に空白が来るまでの値
Const OUT_FILE_TAIL = "_XYZ.txt" ' 出力ファイル末尾
Set wshShell = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
Set regXYZ = New RegExp
With regXYZ
.IgnoreCase = False ' 大文字小文字区別する
.Global = False ' 先頭の一致のみ
.Pattern = REG_XYZ_NOMINAL
End With
sDesktopPath = wshShell.SpecialFolders("Desktop") ' デスクトップの取得
inFilePath = WScript.Arguments(0) ' 入力ファイル
If Not fso.FileExists(inFilePath) Then MsgBox(inFilePath & "が存在しません"):WScript.Quit
outFilePath = fso.BuildPath(sDesktopPath, fso.GetBaseName(inFilePath) & OUT_FILE_TAIL)
If fso.FileExists(outFilePath) Then
If MsgBox(outFilePath & "ファイルが存在します。上書きしますか?", vbYesNo ) = vbNo Then Msgbox "処理を中止しました":WScript.Quit
End If Set outFile = fso.CreateTextFile(outFilePath, True)
Set inFile = fso.OpenTextFile(inFilePath, 1, False)
X="":Y="":Z="":isOutput = True
Do While ( Not inFile.AtEndOfStream )
sLine = inFile.ReadLine
Set retMatches = regXYZ.Execute(sLine)
If ( retMatches.Count > 0 ) Then
Select Case retMatches(0).Submatches(0)
Case "X"
X = retMatches(0).SubMatches(1):isOutput = False
Case "Y"
Y = retMatches(0).SubMatches(1):isOutput = False
Case "Z"
Z = retMatches(0).SubMatches(1)
outFile.WriteLine("/" & X & "/" & Y & "/" & Z)
X = "":Y="":Z="":isOutput = True
Case Else
End Select
End If
Loop
if ( Not isOutput ) Then outFile.WriteLine("/" & X & "/" & Y & "/" & Z)
inFile.Close:outFile.Close
set inFile = Nothing:set outFile = Nothing:set WshShell = Nothing
set fso = Nothing:set regXYZ = nothing
MsgBox "完了"
' その1とその2の内容を一つのテキストファイルに貼り付け XYZ.vbs 等のファイル名で保存してください 追記
ソースを短くするために複数ファイルのドラッグ&ドロップには対応していません
# 複数の関数に分かれていたのを1つにまとめたりしたので
↓辺りを参考にすれば変更は容易です
ttp://msdn.microsoft.com/ja-jp/library/cc364473.aspx プログラム板凄すぎワロタw
ありがとうございます!
どなたかリムーバブルメディアを取り出すvbs作ってください
お願いします
ジャンクのスロットローディング式のドライブ買ったらボタンがありませんでした 011100111111011111
011110000111101111
001111100011110110
111010101101011101
100011101010101010 >>327
ちょっと検索すれば出てくる。少しは自力で探そう
VBSにこだわらないのなら
Vectorで「トレイ 開閉」とかで検索すればフリーソフトがいくらでもあるし
と言ってるうちに見つけた。1行で書けるのが面白かったので個人的にメモ
' 光学ドライブが1台の場合
CreateObject("WMPlayer.OCX").cdromcollection.item(0).eject()
' 光学ドライブが複数ある場合などドライブ指定が必要な時(例は Q: ドライブ)
CreateObject("WMPlayer.OCX").cdromcollection.getByDriveSpecifier("Q:").eject() >>329
APIしか思い浮かばなかった俺には目から鱗だわ<WMPlayer >>329
もうCで作っちゃったけど
1行で済むんですね
ありがとうございました! 業務で、VBSにデジタル署名をする必要が出ました。
各種調査しましたが、どうしても方法が解りません。
どのたか、ご教示願います。 >>332
ここが色々手順を説明しているので分かりやすいと思う
ttp://msdn.microsoft.com/ja-jp/library/ms974604.aspx 無料RPG製作ツール「ロープレジェネレーター」
直感的操作で簡単なゲームが作れます。 簡単に配布可能な状態に出力することができます。
(HSP製のソースコード付きで、スクリプトの知識があれば自由度の非常に高いカスタマイズ
ができます)
他にも仲間預かり機能(100人も)や、仲間の状態/状態異常を細かく設定できたり、
乗り物が作れたりゲーム中に画像を差し込んだり、回転やフラッシュなどのエフェクト
なんかも簡単に作れる様です。戦闘はデフォだとドラクエ系。
移動は矢印キーの他に、キャラがマウスを追っかけたりするとのこと。
他にはオートアクションというのがあってオリジナルシステムの製作に役に立つかも
しれない機能です。これは、マップエディタで設定することで、「マップに入った時・
出た時・一歩歩いた時・戦闘開始前」に自動的に実行されるアクションを設定できる
機能です。
■分からないことや要望は掲示板へどうぞ。他にもいろいろ進化中みたい。
デスクトップ上に任意の文字だけを表示するVBSを作るのはむずかしいでしょうか? >>335
目的がよくわからないけど
スクリーンセーバーでテキスを表示しておけばいいんじゃない? >>336
目的はホットキーに埋め込まれたマクロの実行をする際に
その実行するモードがいま何になっているかをキーを押した時に数秒デスクトップ上に表示させるためです。
>>335だけ見ると、そんなの簡単じゃんって思うが。>>337は意味わからんわ。 何か文字列を数秒間デスクトップ上に表示させるってだけなら、
もし俺ならVBSではなく以下のバッチファイルで手っ取り早く済ませるんだが…
@ECHO OFF
ECHO 表示したい文字列
PING 0 > NUL
PING 0 > NUL
EXIT それ、"デスクトップ上に"ではなく"ウィンドウ内に"だろ
それで良いならわざわざバッチファイル使わずWScript.ShellのPopupで良いはず >>338-340
具体的なイメージで言うと
透明ウィンドウにテキストのみ表示するかバルーンメッセージ的なものを考えていたのですが
VBSで透明ウィンドウはできないっぽいのであきらめようと思います
まあ外部COM使えばどうにでもなる話ではあるが、
それ言うと他も全て「COM使え」で終わってしまう。
+ +
+ +
+ シマウネ━━━━━━━!!!! +
/・/\__ +
+ 丶'\||||||||||)〜 +
<< ̄>/
_|\∧∧∧MMMM∧∧∧/|_
> <
─ / ──┐ /_ /_ヽ| |ヽ ム ヒ | |
─ / / / ̄ /  ̄/ | ̄| ̄ 月 ヒ | |
__ノ \ _ノ //\ / | ノ \ ノ L_い o o
VBスクリプトで起動時にリモートデスクトップをマルチセッションで同時起動するスクリプトを書きましたよ
ttp://xbmc.inpane.com/main/omake/windows.php#rdp 質問です。
フルパスファイル名が書かれているテキストファイルを参照し、ファイル有無をチェックするやり方を教えてください。また、テキストファイルに記述されていないファイルが存在する場合もNGとしたいです。 >>347
詰まる部分があるとは思えない初歩的なプログラムな気がするんだが。
とりあえず書いた所までどこかにアップしてみてよ。 どこかにアップっていうか、ここに貼ればいいんじゃね?
そんな長いコードにはならんだろ いや、かなり長いコードになるかもよ。
前半の
>フルパスファイル名が書かれているテキストファイルを参照し、ファイル有無をチェックする
コレは簡単だよな。悩むこたぁない。
問題は後半のコレ
>テキストファイルに記述されていないファイルが存在する場合もNG
やっかいだぜ?
考え方としては、前半の処理と、後半の処理は完全に分けて
2本の別のプログラムを書くような気持ちでコーディングすればいいんじゃないかな。 何処が厄介?
テキストに書かれたパスを連想配列に入れて
対象フォルダ内のファイルをループ回しながらExistsでチェックするだけだろ 皆さんありがとうございます。
前半部分は大体イメージをつかめているのですが、後半部分でつまってます… とにかく自分で出来る部分まで書いて貼るなりどこかにアップするなりしろ
話はそれからだ つまり全ドライブの全フォルダを検索しなきゃならんな 普通に考えれば、対象は一部(特定のフォルダ以下)だろ >>357
どうしてそう言い切れる。
本人はフルパスファイル名、つまり絶対パスを指定しているんだぞ
特定フォルダでいいなら相対にするだろ常識的に考えて 昨今、相対パスが使われるのは相対パスでなければ困る場合のみで
どちらでも構わない場合は絶対パスを使うことの方が多い件について。 >>347が情報小出しにするからイカンのだ
こういう質問者って大体足りてないよな色々と >>359
zipとかの書庫ファイルはなんで相対パスで格納してるか理解できる?
何のためにカレントディレクトリって概念があると思う?
何でわざわざ%SystemRoot%とか環境変数を定義してるのか疑問に思わない?
相対パスが絶対的に必要ではない場合はって話をしてるのに
全く的はずれな例を持ってきたな
そういうことは相対パスそのものが無意味とか宣ってる奴に言ってやれ どちらでも構わない場合、ってどういう場合だよ
レスにアンカー付けるときにわざわざ
http://hibari.2ch.net/test/read.cgi/tech/1170492587/362
なんてする奴はいないだろ
逆に「絶対パスが使われるのは絶対パスでなければ困る」時でしかないだろ >>361
質問者はzipファイルの中身まで調べるなんて設問はして無いだろ。
なんでオマエは論点をずらそうと必死なんだ? vbscriptでmicrosoft bluetooth stackの接続情報を得ることはできませんか? "E:\hogehoge\hoge"
というフォルダが存在した場合、そのフォルダを削除。
存在しなければそのまま終了。
という簡単なスクリプトを教えていただけませんでしょうか? いいよ。
で、どこを教えて欲しいの?
まさか1から10まで丸投げで全部書いてとは言わないよね?
しかも質問スレではなく、自分の書いたものを晒すスレで。 >367
VBSじゃないが、これで事足りないか?
if exist "E:\hogehoge\hoge\." rd/s/q "E:\hogehoge\hoge" なんだか趣旨がよくわからないスレでしたが、どこへ質問すれば良いのかわからず、とりあえず書き込んでしまいました。
申し訳ありません。
>>370 さんのバッチファイルで満足な結果が得られました。
まさか1行で済むとは思いもしませんでした。
ありがとうございました。 hoge\. だとhogeってファイルがあった時も反応するんだよな。
hoge\nul だとディレクトリしか反応しない。 質問スレがみつからなかったので、こちらで質問させて頂きます。
Set objShell = WScript.CreateObject("WScript.Shell")
Set objExec = objShell.Exec("ipconfig.exe")
って実行した時に、標準出力に結果を出さないようにする方法ってありますか?
ipconfig 1 > nul
みたいな感じで、エラー発生時以外はすべて返ってくる結果を捨てたいのです。
そのまま書いてもうまく動かないです。 つgoogle [wscript Exec 標準出力] >374
トラップされるって事は、読み出さない限り無視されるって事ですか? > 標準出力に結果を出さない
はipconfig.exeが対応してなきゃ出来ないよ
WSH(EXEC)が受け取った標準出力を
「コンソールウィンドウに表示しない」
ならどうにでもなるけど >376
コンソールウィンドウに表示しないと、1 > nul って同じ扱いですか?
質問ばかりで申し訳ない。 ipconfigはネットワーク設定を確認する為のプログラムなんだから
エラーになるのはexeが見つからない時ぐらいじゃねーの。
ネットワーク設定されて無い時は"設定無し"って正常終了するんだし >>373
ttp://www.atmarkit.co.jp/fwin2k/operation/wsh05/wsh05_03.html pingで表示したくなくて、WMI使ったな
こんな感じだったと思う。
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery _
("Select * from Win32_PingStatus " & _
"Where Address = '" & hoge & "'") 何かすげぇな…
CreateObject("SAPI.SpVoice").Speak"Wellcom to VBScript." CreateObject("SAPI.SpVoice").Speak"KoNoHaYaSaNaRa. Ieru. Null Po."
CreateObject("SAPI.SpVoice").Speak"Gutt." "null poor" "gad"にしたらそれっぽく聞こえるようになった ほるだー内にあるoutlook6のメッセージファイル.emlを検索して、エクスプローラにリンク表示するプログラムを作ってます
が、.emlが開けない
アウトルックを軌道してクリックしたメッセージを表示したいのですが、どう書けばいいのでしょう。
wshshell.runでは出来ませんでした…… ISPの切断>接続をしてくれるPGをどなたかキボン!
telnetでルータ(Aterm)に入って、PPPoEを再接続してくれる物です。 だからここは自分で作って晒すスレで
質問スレや制作依頼所じゃないと何度言えば… ほかにいくか……VBSじゃなくてIEの問題な気がしてきた 丸投げされるのはムカつくけど多少の質問ならいいんじゃね?
>>387
telnetで入れるならTeraTerm等でマクロ作ったほうが簡単。
もっとも擬似GUIだとお手上げだが。 昔、telnetをラップするvbs作ったことあったな… こんな感じでマイドキュメントをコピーしてバックアップを
取ろうとしてるんですが、Windows 7だとエラーが返ってきて、
コピーできません。
Set objFS = CreateObject("Scripting.FileSystemObject")
objFS.CopyFolder "C:\Users\Admin","C:\test"
AdministratorでもコピーできないのってUACの仕様ですか? >>390を引き合いに出すなら、それを引き合いに出した>>394自身が答えてやらないとなw >>392
UACというかVistaからの仕様です
例え管理者といえど他人の敷地には許可無く進入は出来ません。
今までのウィルスならこれで全て無力化される、そんぐらい厳しい仕様。
因みにAdminとAdministratorは別物だよ。
XPまでのユーザー管理とは似た非なるものと認識しておこう。
ポリシーいじれば同じ感じに出来るけどめんどい。 >>393
>>394
質問スレじゃないの理解してませんでした。申し訳ない。
>>395
フォローありがとうございます。
>>396
かなりめんどくさそうですね。手作業でやった方が速いのかも…
アクセスフォルダに所有権とかつけてみて、もうちょっとやってみます。
ありがとうございます。 唐突ですがウサギ型ロボットをR2D2にするためのVBSを公開しましたよ
ttp://xbmc.inpane.com/sub/nabaztag/ 会社の共有PCの管理のため、Windowsのログオンスクリプトにかまして、
とあるプロセスを監視しています。
なので基本的にユーザーがログイン中は常にWscript.exeが動いているのですが、
↓のような無限ループでもいいんですかね?
なんとなく無理やりな感じがして、もっとスマートなやり方があるでしょうか?
Call プロセス監視処理
@
Sub プロセス監視処理
Do
'WMIからプロセス取得して、目標のプロセスがでたらループ抜け
Wscript.Sleep 1000
Until
Call やりたい処理
End Sub
A
SUb やりたい処理
'やりたい処理がおわったらまた、プロセス監視処理をCall
End Sub おまえら>>399これくらいも答えられないのかよ
死ねっ!能無しども
会社でもろくな仕事してないんだろうなぁ・・ >>400
あんまし読んでないしてきとーだけど再帰処理っぽいなと思った。
見つかるまで自分自身を呼び続けたらいいべさ ここで聞いていいのか分かりませんが、分かる方いたら教えてください。
コマンドラインでフォルダを圧縮するためにZIP.VBSというのを使っているのですが、
MakeZIP.VBSでフォルダを圧縮する際、zipファイルにフォルダ名が格納されてしまいます。
photo
├aa.jpg
└bb.jpg
上記のような場合に、zipファイルにphotoフォルダも格納されます。
これをphotoフォルダを格納せず、ファイルのみ格納するにはどこを修正すればよいのでしょうか。
よろしくお願いします。 そもそもスレ違いだが、それ解らないレベルならZIP.VBSなんか使わずに
コマンドライン型のアーカイバツール使えよ。
GUIで予め設定しておけば渡したフォルダの中身だけ圧縮してくれるものなんて
いくらでもあるから。 ブ・・・vbs・・・
わしは・・ワシは今までこんな素晴らしい言語があるなんて知らなかった・・・!
APIなんかいらないじゃん! VBSにD&Dしたものを他のソフトのウィンドウへD&Dとして受け渡すことは可能ですか? ファイルへのD&Dなら可能
これは単なるコマンドライン実行なので
ウィンドウへのD&Dならデフォでは不可
専用のCOMでも作るか探すかすれば出来ないことはないだろうけど サンプルをいじることしか出来ない私には手に負えないですね…
諦めで別な方法を模索してみます 2chのhtmlを取得して、vbsで正規表現による抽出と置換をしてhtmlを整形してログを管理するプログラムに読ませたい。
抽出までは上手くいきました。
しかし、正規表現による置換ができません
例えばこのスレのhtml内のコメ409を抜粋するとこうです
<dt>409 :<a href="mailto:sage">
<b>デフォルトの名無しさん</b></a>:2011/06/06(月) 00:45:23.45 <dd> サンプルをいじることしか出来ない私には手に負えないですね… <br> 諦めで別な方法を模索してみます <br><br>
ここから
409 :2011/06/06(月) 00:45:23.45 <dd> サンプルをいじることしか出来ない私には手に負えないですね…
<br> 諦めで別な方法を模索してみます<br><br>
にするには\<a.+/a>|(</a>:)|\</?.+?\> で置換して余計なものを取り除けばできました。
しかし、<dd>や<br>などの改行にあたる部分も別途置換しないといけないのでここで詰まってます。
片方づつなら出来るのですが同時に1スクリプト内
でやろうとするにはどうすればいいのでしょうか?
\<a.+/a>|(</a>:)|\</?.+?\> の部分を空白に置換するvbsです
Dim objFile ' 対象ファイル
Dim oldText ' 置換前テキスト
Dim newText ' 置換後テキスト
Dim objFSO ' ファイルシステムオブジェクト
Dim objRep ' 正規表現オブジェクト
Dim repText ' 置換対象文字列
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("読む込むテキストファイル")
' テキストデータ読込
oldText = objFile.ReadAll
' 置換対象文字列
repText = ""
Set objRep = New RegExp
objRep.Multiline = True
' 正規表現パターンを指定する
objRep.Pattern = "\<a.+/a>|(</a>:)|\</?.+?\>"
objRep.IgnoreCase = True
objRep.Global = True
' テキスト変換
newText = objRep.replace(oldText, repText)
objFile.Close
' 書き込み
Set objFile = objFSO.CreateTextFile("書き出すテキストファイル")
objFile.WriteLine (newText)
objFile.Close
' 書き込みの前から' 正規表現パターンを指定するへループして繰り返せればなと考えているのですが上手く思いつきません。
もし、わかるかたがいらっしゃれば教えてください。よろしくお願いします。
やりたい事がいまいちわからないが、
複数回やりたいんであれば、
正規表現パターンを配列に入れて、ループするだけじゃないかな〜
>>411
objRep.Pattern = "<(""[^""]*""|\'[^\']*\'|[^\'"">])*>"
こういうことじゃなくて? なんでdat使わないで、
わざわざhtmlなんて難しいものを使う? ちょっと見てみた、確かにhtmlよりdatのほうが容量4割減でおいしいんだけどタイトル取得できないのとコメ番号ないから置換するときどうやって割り当てようか思いつかない デスクトップから2ch検索するvbs作ってるんだけど、
変数の件でわからないところがある。
Dim 変数 で宣言する
このとき変数が、例えば2churlとかだと識別子がありません。とエラーがでる
churlなら問題ない、どうして先頭に数字がくるといけないんですか?
識別子がありません。 先頭に数字が来ることを許すと
Dim 2
とか
Dim 123
という変数が出来てしまう
これってどうやって変数の2や123と、数値の2や123を識別するの?
ってことになるので、必ず英字を入れなければならないというルールが必要になるわけで
1文字の変数がある以上、その英字が入る位置は1文字目、つまり先頭になり
1文字目が英字でなければいけない=先頭が数字ではいけない
ってことになるわけだ
1文字目が英字でさえあれば、1文字変数でも、2文字目以降が数字でも
確実に変数と数値を識別できる vbsでpingを打って、通るまで処理を繰り返すスクリプトを
作成しているのだが、どうもうまくいきません。
IF文で分岐をさせるのはうまくいくのですが、以下のスクリプトで
192.168.0.3に対して通るようになった時点でスクリプトを終了
させたいんですが、どこが悪いんでしょうか?
dim strIP
dim timeOut
'タイムアウト設定(ミリ秒)
timeOut = "10"
strIP = "192.168.0.3"
Set objWMIService = GetObject("winmgmts:\\.")
Set colItems = objWMIService.ExecQuery _
("Select * from Win32_PingStatus " & _
"Where Timeout = " & timeOut & " AND Address = '" & strIP & "'")
For Each objItem in colItems
do while objItem.StatusCode <> 0
Wscript.echo "NG"
Set objWMIService = GetObject("winmgmts:\\.")
Set colItems = objWMIService.ExecQuery _
("Select * from Win32_PingStatus " & _
"Where Timeout = " & timeOut & " AND Address = '" & strIP & "'")
loop
Next 選択プルダウンボックスとか作れたら便利になるのになぁ VBSで選択プルダウンボックス使ってるけど、何か?
VBSというかWSHは、COM、OCXで拡張してナンボなんだから
欲しいけど言語に備わってない機能は、外部で補えば良いだけだ 自分専用ならそうだろうけど、
comはインストールの壁が越えられない 超えられるけど、何か?
USBメモリで持ち歩いて使ってる
COMのレジストリ登録を自動化してるとかではなく未登録で 自信満々で「超えられるけど、何か?(キリッ」だもんなあw 自信満々に言った「comはインストールの壁が越えられない(キリッ」
を否定されて悔しかったの? USB股間に忍ばせて持ち歩く男の人って・・・///
きみの端子にプラグ★イン! >>426
あのね、ある程度の会社ならね、勝手にツール類をインストールする事ができないのね。
USBメモリも、使用禁止、あるいは相当制限されているのが一般的なのよ。 なんか勘違いしてる子が出てきたなw
あのね、comにインストールの壁なんて無いって話であって
USBメモリなんて、全く関係ない話なのよ
それと、『ある程度』レベルの会社だと、勝手にツール類をインストールする事ができないところが多いけど
『ある程度』を超えたまともな会社だと、勝手にツール類をインストールする事が出来るところも多い
セキュリティーが確立している上に、VBAやWSHなどの元から入ってる言語でいろいろ作れる奴が多いから
外部からのツールのインストールを制限しても、元から入ってる言語でツールが作れちゃうから意味無いw
逆にまともな会社だでツールのインストールを制限している場合は、WSHもVBAも制限してる ≠423とか必死に否定すると、余計に・・・・・( ̄ー ̄)ニヤリッ 「勝手に出来る」って方がおかしいだろ
今の時代どこもピリピリしてるってのに。
単におまえさん自身か会社がその客に信用されてるってだけじゃねーの?
でも普通は申請式だと思うけど。他人の会社で勝手にてのはどうかと思う。 勝手にしてよいと許されていることを勝手にやる上で、何の咎があると?
なにか勘違いしてやいないか? batファイルは止められませんね
じゃぁバッチ最強じゃん <a href="http://upload.jpn.ph/500/bin/やきそば.zip">こちら</a>
という内容のテキストファイルからURLの部分を抽出して
変数に入れるっていう目的でvbs作ったんですが上手く変数に入りません
Dim objFile ' 対象ファイル
Dim oldText ' 置換前テキスト
Dim newText ' 置換後テキスト
Dim objFSO ' ファイルシステムオブジェクト
Dim objRep ' 正規表現オブジェクト
Dim repText ' 置換対象文字列
var1 = "解析.txt" '保存する名前
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile(var1, 1, false, 0)
' テキストデータ読込
oldText = objFile.ReadAll
patrn="(http:\/\/[^\x22 ]+)" '検索する文字列を入力して下さい。
repText = "$2"
Set objRep = New RegExp
objRep.Multiline = True
' 正規表現パターンを指定する
objRep.Pattern = patrn
oldText = objRep.replace(oldText, repText)
WScript.Echo $2
objFile.Close
どうすればいいのでしょうか、もしわかるかた入れば教えてください。
自分では後方参照とかExecuteやマッチとかが関係ありそうで
調べて試したんですが思うようにいきませんでした。 正規表現の構文がデタラメ。
パターンがデタラメだし後方参照の仕方もデタラメ。
ヘルプもろくに見てないだろ。 >>433
やっぱ許可貰ってんじゃん
ま、当たり前だよなびっくりした >repText = "$2"
この意味不明っぷりがすごいね 突っ込む所はそこじゃないと思うがw
Echoのとことか、パターン自体に突っ込めよ >>440
> objRep.Pattern = "T..t"
感動的なパターンだなw >>437
ドリルの刑
ttp://www.amazon.co.jp/dp/4774145092
姉妹編と違って表紙にドリルが載っていないのがイマイチだけど >>437も恥ずかしくて出れこれないんだから、いい加減に許してやれよ さすが VBSなんていう時代遅れツール使ってるスレはレベルが低い 文字を文字コードの数値に変換して出力したいんだけど誰か助けて VBScriptって、1ヶ月もあれば極められるよね
あとはCOMを何処まで使いこなせるかだけ 例えば、notepad.exeを起動するvbsは?
>>459
Set shell = CreateObject("WScript.Shell")
shell.Run "notepad"
>460
分かりました。ありがとう
ところで、Option Explicitを書くとshellが宣言されてないと起こられますが
この場合、shellの型は何ですか?
あるいは、Option Explicitを書くべきじゃない?
>>461
Object 型
VBScript では VB や VBA と違い、宣言で型を記述しないのであまり意識はしないが、
Object 型だけは代入時に Set を必要とするので認識は必要
あと、Option Explicit は書いた方がよい
Option Explicit
Dim shell
Set shell = CreateObject("WScript.Shell")
shell.Run "notepad"
Option Explicitはtypo無くしてくれるからな
昔のソース改修でstrPrinterとstrPrnterで1週間ぐらいハマった記憶
今なら真っ先に疑うけど当時はまだ慣れてなくて泣いたなぁ >>462
CreateObject()の戻り値がObject型ってだけで変数に型は無いよ
Object型を変数に代入するのに、Setが必要なだけ
その証拠に、
Set shell = CreateObject("WScript.Shell")
shell = 1 '変数に型は無いので、この代入は有効
shell.Run "notepad" '変数には数値型のデータが入っているので、ここでエラーが発生
細かい事だけど、知っているのと知らないのでは大違い
>>464
typoを無くす為にOption Explicitを宣言してはいけない
Option Explicitの宣言は、ローカル変数とグローバル変数の区別を明確にするために宣言すべき
> 変数に型は無いよ
ちょっとハズレ
正しくはVBSの変数の型は、無いのではなくValiant型のみというだけ
で、Valiant型は内部型が固定されていないのでどんな型の値をも代入することが可能だが
値が代入されている状態では、内部に歴とした型という概念が存在する
細かい事だけど、内部文字列型と内部数値型では、外がValiant型でも扱いが異なるので、
知っているのと知らないのでは大違い
> Option Explicitの宣言は、ローカル変数とグローバル変数の区別を明確にするために宣言すべき
それ、VBやVBAの場合ね
それらの場合はグローバル変数(全モジュール共通変数)とモジュール内変数の区別に役立つ
でもVBSの変数スコープには、グローバル変数、プロシージャ内変数、クラス内変数の3つがあるが
Option Explicitはこれらの区別を明確にする役目は果たさない >>466
だから、違うって
全ての変数は型が無いことを保障されてるの、これをValiant型と言います
そして、型を持っているのは、データ側であって変数ではありません
変数に型がある場合は、オブジェクト型の変数に整数を代入する事は絶対に出来ません
次に、Option Explicitは、全てのスコープにDim文を強制します
VBScriptの仕様では、Dimで宣言された変数は該当スコープでのローカル変数として確実に扱われるが、Dimで宣言されない変数は、同名のグローバル変数がある場合、グローバル変数として扱われます
ようは、使うべきでないグローバル変数を誤って使う事をしない為に使われるのであって、typo問題の為に使われているのではない
考えるまでもなく、typoによって引き起こされる問題よりも、グローバル変数への不用意なアクセスによる影響の方がはるかに大きく深刻です
バリアントの綴りが間違ってた...
ValiantではなくVariantでした。 >>469
そう、>>466のように変数に型があると勘違いしていると、SubやFunction、Propertyに入力されるデータの型を勝手に期待して自爆する事になるよね
特にVBScriptのClass周りには、変数に型が無い事による罠が散りばめられてるからねぇ
>>471
そう、>>466は理解の薄い痛い子だね
無型の変数に内部型があると信じている辺りが痛すぎる
型を持っているのは、変数ではなく値なのにね
たぶん、VBScript以外のプログラミング言語を使った事が無いんだろうね >>467
横レスだけど
ローカルとグローバルでの変数名は、設計レベルで対応すべき話では?
実際の製造(プログラミング)時はtypo対策の方が重要では
そもそも、グローバルとプロシージャレベルで同名変数使うって
どれだけ可読性の低いプログラムを書くつもりかと。
普通コーディングルールで禁止されていると思うし、自分なら禁止する
個人レベルならともかく企業でもVB系言語を使う以上、Option Explicitは
BASICを、普通の(変数宣言を強制する)プログラミング言語と
同レベルに引き上げるものだと思ってるけど
とMSX-BASIC1から入って業務でVBは2(Win版。流石にDOS版は触って無い)から
使っている年寄りとしては思う >>473
だから、Option Explicitをつければ、コードの再利用に際して変数名に関する問題は起こらなくなるの
>>476
だからソースの始めに、Option Explicitが必要なんじゃんw >>477
は?
typoしないんなら必要ないだろ?
ローカルでDimし忘れたらグローバルでDimしてる変数が使われちゃうぞ >>478
お前、馬鹿だろw
Option Explicitが書いてあれば、ローカルでDim宣言されている証明になるが
Option Explicitが書いてあっても、typoしていない証明にはならない
なんか、自分自身が勘違いしていて痛い奴だってことに気付いてない
蘊蓄野郎が一人でずっと頑張ってるなぁ Option Explicitでtypo対策する奴の方がよっぽど痛いけどね 普通に考えて、変数名をコピペしてたらtypoなんて起きないだろ...
つーかtypoが問題になるって何十年前の開発環境だよ... 入力補完じゃなくてコピペって・・・・・
それこそ何十年前だよって話だなw
程度が知れてきたぜ うはっ、入力補完機能のあるエディタ使ってて、変数名のtypoがプログラム制作上の重要課題ってw
あれだな、うちのメモ帳の方が、あんたの開発環境よりも上って事だなw
この10数年の間、変数名のtypoなんて起きた事ねぇもんw この子、相手が一人だと思ってるのかな?
俺は変数名のtypoがプログラム制作上の重要課題なんて一言も言ってないんだが
必死になりすぎて周りの現実が見えてないんだね
大勢に嘲笑されているという現実が・・・・・ うはっw
とうとう、「俺はtypoなんて言ってねぇ」とか言い出しちゃいましたよ
このお方w そもそもプロシージャとグローバルで名前重複なんて、可読性が低くて
絶対保守したくない類のソース。機械が読めても人が読みにくい。
Option Explicit以前にその時点で根本的に間違っていると思う。
それ以前に最近は「グローバル変数自体原則禁止、明示的に引数で渡すべき」
とか言われる事も多くて、高度情報処理試験の午前問題にもあったり。
ま、あくまで「原則」なんでグローバル変数を使わざるを得ない場合もあるが
独立性が低下するので再利用性が低下するのは避けられない。
つまりはスコープの違いをOption Explicitでどうこうして再利用性を上げようとする
のは方針自体が間違っている。
引数のオーバーヘッドに関しても昔はともかく今はPCの性能が十分高いので
高速策よりも安全策というか保守性を取る方が多いし。
VBSの場合は短い事もあり汎用的に使うfsoとかはグローバルな事も多いけど。 >>488
馬鹿か
なんの為のスコープ分けだ
もう一度、構造化プログラムについて習いなおせ
互いのスコープが引数と戻り値のみでのみデータの受け渡しをする限り、互いの内部の処理は気にする必要は無いの
そして、VBScriptの場合は、グローバルスコープへ直接コーディングをする可能性があるから、Option Explicitによるコードの再利用性の保障が必要なんだっつうの Option Explicit「みんな!私のために争わないで!」 >>489
らちが明かないから何かサンプル上げて説明してみて >>491
まず共通部分
<job id="main">
<script language="VBScript" src="test.vbs" />
<script language="VBScript">
fso = "Hello"
MsgBox Test() & vbCrlf & fso
</script>
</job>
次に、test.vbs部分Option Explicit無しバージョン
Function Test()
Set fso = CreateObject("Scripting.FileSystemObject")
Set File = fso.OpenTextFile("test.vbs")
Test = File.ReadAll
Set fso = Nothing
End Function
こいつも、test.vbsでOption Explicit有りバージョン
Option Explicit
Function Test()
Dim fso, File
Set fso = CreateObject("Scripting.FileSystemObject")
Set File = fso.OpenTextFile("test.vbs")
Test = File.ReadAll
Set fso = Nothing
End Function
Option Explicit 云々以前の問題だな >>493
>Option Explicit無しバージョン
Option ExplicitよりもローカルのDimが無い事の方が影響大でしょ
> ローカルDim無しバージョン
とした方がよいのでは?
別にOption Explicitによりローカル宣言とグローバル宣言の優先度が
変わったとかじゃないし
「Option Explicit」の有無「だけ」による挙動の違いを説明できないと Option Explicit
Function Test()
Dim File
Set fso = CreateObject("Scripting.FileSystemObject")
Set File = fso.OpenTextFile("test.vbs")
Test = File.ReadAll
Set fso = Nothing
End Function
そんだけ言うなら、このパターンでも試してみたらw やれやれ、「Option Explicit」の使い方をようやく理解したか?
まあ、なんで、そのエラーが出るのか理解出来て無いってほうが濃厚だなw
なんせ、VBScriptの変数に内部型があるとか言っちゃうぐらいだからなぁw 自身が勘違いしていた事には気付いたが、
最初に強気で蘊蓄かましてしまった手前、
引くに引けなくなって強がりを続ける465萌え >>501
ぷぷぷっ
もう、技術的な話を出来ずに口先だけかよw
「俺は、MSX-BASIC1からBASICを使ってるんだ」って言う割には大した事は無いなぁ
間違っているなら指摘しなw ところで、既に>>499を提示してからでも丸一日が過ぎようとしているのに、今更、ファイルをクローズしてないとか言わないよねw おーい、沢山いるはずの>>501よーい
技術的な指摘まだかーい
最低限、>>498みたいな、間抜けな指摘はすんなよーw もうそろそろ飽きてきた...
MSDNからのコピペ
−−−
Option Explicit ステートメント
スクリプト内のすべての変数に対して、明示的な宣言を強制します。
解説
Option Explicit ステートメントを使用する場合は、スクリプト内の他のステートメントより前に記述する必要があります。
Option Explicit ステートメントを記述した場合、変数は、Dim、Private、Public、ReDim などの各ステートメントで明示的に宣言する必要があります。宣言されていない変数名を使うと、エラーが発生します。
−−−
以上
ソースコードに、Option Explicitが記述されていると、変数の宣言は明示的に行わなければならない
つまり、>>493は、>>494に変更しなければエラーが出て実行できない
では、>>499で、変数fsoは明示的に宣言されていないのになぜOption Explicitはエラーを出さないのか
それは、グローバル変数としてOption Explicitの効果範囲外で暗黙的に宣言されているから
つまり、ローカル変数とグローバル変数が交じり合い、スコープが明確ではなくなって全ての変数が宣言済みなのでOption Explicitはエラーを出せなかった
この結果の意味するところは、Option Explicitは、スコープがあやふやな場合には、typoを検出する事は出来ない(>>499)
逆に、Option Explicitを宣言した状態で、スコープを明確にしデバッグすれば、プロシージャの独立性を保障する事ができる(>>494)
あれだ、>>498は目の付け所は良かったが、リファレンスぐらいは読んだほうが良いってこった >>506
まだやる気かw
頑張って反論よろしくw >>462
変数shellがObject型w
間違いを指摘されたら、>>466で内部文字型と内部数値型では扱いが違うとかw
つまりあれかw
MsgBox "123"+4+"5"
はエラーなんだw
なんかカッケーなw こんなとこまで来ちゃうお前らの為じゃねーよ
適当にやったけど動いたからいーや的思考な
困ったくんや困ったチャンの為に書いてんだよOption Explicit
詳しい人が必ずメンテするとは限らないのがVB系の怖いとこで こんなところに来ない人のための事をここに書いて意味あるんですか? 今までUWSC(フリーソフト)を使っていましたが、最近、VBScriptを知り、同じような処理ができることを知りました。
VBScriptを勉強中です。
分からないことがあればよろしくね。 だれか3000円上げるから
24平均律の鍵盤プログラム作ってくれ〜(T_T) 作曲するのに使います
音色はピアノ音だけでOKです コンパイルしたプログラムなら3'000円でいいけど
ソース(ソース丸見えのVBS…というか鍵盤必要ならHTA)で欲しいなら150'000円 >>515
言葉の意味がよくわからないけど
3000円の方でお願いします 白鍵とか黒鍵は
ないようなもんなんで
ボタンがズラリと並んでるだけでOKです
Eの位置だけボタンにEって書いてくれたらOKです リアルタイムで音を確認しないと何かね……確信持てないっていうか
シーケンスでやってその日は納得いっても
次の日に聞いたらアレ?って事ばかりなんで 知恵袋にも登録したのですが、どうしても知りたいのでご教示お願い致します。
マクロを実行して、他のファイルのマクロまで編集できますか。
いろいろグーグルで調べたのですが、どうもヒットせず実行できそうにありません。
作成したいファイルは追記します。
1.エクセルファイル内にボタンフォームを作り(このファイルを便宜上、ファイル@とする)、ボタンフォームを押すと新しいエクセルファイルが作成される(このファイルを便宜上、ファイルAとする)。
2.次にファイル@から1.とは別のボタンフォームを押すと、「挿入>図>ファイルから」と同じ要領で画像を選択でき、Aファイル内のSheet1・セルA1に画像が貼り付けられる。
3.最後にファイル@に設置した1.と2.とは別のボタンフォームを押すと、ファイルAのVBScriptにスクリプトが書き込まれる(出来ればVBScriptをパスワード保護出来れば幸いです)。
という流れをファイル@のVBScriptなり、モジュール等を使って行いたいのです。
3にあるマクロは、上書き保存ができなくなるマクロのため、1の段階で保存ができると幸いです。
また、複数ファイルを処理する必要が有るため、同一ファイル名で保存しない仕様を求めています。
全部出来ますよ
但し、マルチな上にスレ違いなので、具体的な説明は伏せますが ExcelでVBS……
ワークシートにボタンに見せかけたオブジェクトを貼り、
押すとハイパーリンクで外部のVBScriptを実行する
とかならやった事がある ExcelからVBSを呼ぶだけのパターンか
俺は逆にVBSからExcel.Applicationを使って
Excelブックを操作するってことを結構やるな
「ExcelでVBS」ではなく、「Excel"を"VBSで操作」ってこった
ExcelからVBSを呼ぶくらいなら、そのVBSを標準モジュールなどに取り込んで
わざわざ外部のVBS呼ばずに内部実行するし だよな
>>524がなんんか面倒くさいことやってるだけで 一応、マクロを無効にしたExcelからでも実行できるというメリットはあるけど officeのマクロはjsに移行するよ
おまえらの書いたVBSなんて保守したくないし、頼むからせめてjsで書いてくれ webで使う場合はjsに軍配挙がるけど
wshやテキストエディタのマクロとかはvbsがいいな
つーかvbsの前に、jsしか使えないバカを淘汰して欲しい
vbsしか使えないバカも同じくね >>529
VBSの保守をしたくないんじゃなく、VBSを保守する能力が無いの間違いだろ? VBSにはプログラム言語としての長所は微塵もないよ
既に言語からもユーザーからも加齢臭とか腐敗臭とか漂わせている >>532
Win32 APIの呼び出しができればいんだけどね
もう絶望的かな SFC miniかExcel経由で行けるけどキモいよな
しかし生のVBSからwin32api呼べたら怖くてエロサイト行けなくなる いまメモ帳で頑張ってるんだけど、
("text").Value = rnd
このtextに乱数の直前に文章を入れたいんだけどどうすればいい?
必要なら全文載せる 乱数の直前に文章を入れる?
単純に & で連結したらいいと思うが…
msgbox "文章" & rnd >このtextに乱数の直前に文章を入れたいんだけどどうすればいい?
乱数の直前に、このtextに文章を入れたいんだけどどうすればいい? CreateObjectのIEでブラウザの操作を自動化するスクリプト作っててサイトへのログインは自動化できたんだけど、
その後のページにあるボタンを押す動作ができなくて行き詰まってる…
流れとしては
1. ID、PWを入力してログインボタンを押す
2. TABキー15回+ENTERでボタンを押す
(ページが切り替わる)
3. TABキー15回+ENTERでボタンを押す ←ここからうんともすんとも言わない
1、2は処理に成功してるんだけど、3が何も起こらない(エラーも表示されない)
3が動作しない原因はなんなんだぜ? '1.ログイン
.document.all.Item("userId").Value = MemID
.document.all.Item("passWd").Value = UsrPass
.document.all.Item("btnLogin").Click
While .Busy Or .ReadyState <> 4
Wend
'2.切断
WshShell.SendKeys("{TAB 15}")
WshShell.SendKeys("{ENTER}")
While .Busy Or .ReadyState <> 4
Wend
'3.接続
WshShell.SendKeys("{TAB 15}")
WshShell.SendKeys("{ENTER}")
While .Busy Or .ReadyState <> 4
Wend
>>542
これでいいかな?
なぜか「3.接続」を実行できないんよ(´・ω・`) WSH には、こんな使い方もあるんだ!
While
WScript.Sleep 100
Wend
とかの時間間隔入れてみれば?
http://www.atmarkit.co.jp/fwin2k/operation/wsh05/wsh05_04.html >>544
ありがとう!できたよ!
↓ReadyStateを3とSleep 1000を組み合わせたらなぜかいけたww
'ログイン
.document.all.Item("userId").Value = MemID
.document.all.Item("passWd").Value = UsrPass
.document.all.Item("btnLogin").Click
While .Busy Or .ReadyState <> 4
Wend
'切断
WshShell.SendKeys("{TAB 15}")
WshShell.SendKeys("{ENTER}")
While .Busy Or .ReadyState <> 3
Wend
'接続
WScript.Sleep 1000
WshShell.SendKeys("{TAB 15}")
WshShell.SendKeys("{ENTER}")
While .Busy Or .ReadyState <> 3
Wend Explorerを起動して任意のフォルダ(ドライブ)を指定で起動する。
その際、n階層下のフォルダまで自動的に展開した状態で開いて欲しい。
通常 → これを → 1階層指定で展開済み起動
d:[+]フォルダA d:[-]フォルダA
[+]フォルダB [+]子フォルダ1 ←孫フォルダ(2階層下は存在してても展開しない)
[+]フォルダC 子フォルダ1
: [-]フォルダB
:
ドライブルートから1階層下までの固定展開する機能は必須です。
可能ならば起点がドライブルート固定では無くて、パス指定で起点となるフォルダの指定と
自動展開する階層数が1階層で無くソースで指定する箇所があれば出来れば最高に嬉しいです。 ここは作ってくれって頼む場ではなく
こんな便利なの作ったけどどうよ?って作ったモノを晒す場だぞ
まあ>>546程度のことは多機能ファイラならコマンドやマクロで出来るので
完成したとしても晒してくれなくて結構だがな アンカーがズレてるぞ
それともスレの趣旨を理解してないおバカさんかな? >>547
エクスプローラでやるから意義があるんだろ
ってか4ヶ月もたつのに反応してくんなや
正確悪すぎてきもい > 4ヶ月もたつのに反応して
るのは>>548だなw |┃三 ∩___∩
|┃ | ノ ヽ
|┃ ≡ / ● ● | <あどうも、こんばんわー!
____.|ミ\___| ( _●_) ミ
|┃=___ |∪| \
|┃ ≡ ) ヽノ 人 \ ガラッ 会社で入力するのめんどいからいろいろVBSで自動化してる。
会社の規則的にやばいので、今はやってないけど自動的にWindowsにログインするようにしてた。 CSVファイルをドラッグ&ドロップで読み込んで、
2行目の先頭3文字を抽出してください COM使わなきゃ大したことは出来ないが
COM使えば大抵のことは何でも出来る
まあ組み込みCOMだけじゃまだ貧弱だが
COMは優秀なものが腐るほどあるし、自分で作ることも出来る
COM使えばGUIだって作れるし、
WinAPIだってNET Frameworkの全てだって使える WMIが便利そうだけど、あまりにも書籍などが少ない 書籍なんか無くても、ネット上の情報だけで事足りるけどな
余程頭が悪くなければ・・・ 暇がある人は時間かけてネットの情報探せばいいさ
その暇を惜しむから、まとめて書籍にしてくれと思うわけで 暇ってw
まとめてWMIの情報載ってるページに行き着くのに10秒とかからんだろ?
あとはサイト内検索とページ内検索を駆使すれば、書籍の目次からページを辿るより早いし
それすらも出来ないようなレベルだと、WMIを使いこなすのは無理じゃね? まとめてって言葉の真意が伝わってないな
情報を集める事だけがまとめる事じゃないぞ 戦士は胸に一つのバブルソートを抱く
桃白白ブレイブストーリーである。
順番を維持したまま、重複行を除去しちゃう。
https://friendpaste.com/4hvzoL2l8p8kQjoyQiUpUt >>565
このサイトのセキュリティ証明書には問題がありますww
って表示されるの。白桃おじさん、他のサイトがいいよ。 >>566
friendpasteを例外に追加しちゃったらいいよ。たぶんブラウザの設定で
できるはずだから。見た?桃白白ブレイブストーリーのコード見た?
感想とかある?とてもすてきなコードですねとかそういう感想ある?
あとこれ桃白白。
http://livedoor.blogimg.jp/robosoku/imgs/d/f/df309cbc.jpg >>567
バブルソートってやつじゃないのね
よくわかんない
簡単に解説ちょうだい >>565と、Scripting.Dictionaryを使った方法(コードは十数行)で
10万行の重複削除の処理時間を比べてみた
>>565 1905.686秒
Scripting.Dictionary 0.178秒
これが、初期状態では入ってないCOMを使った方法と比べて遅いってだけなら
いくら遅くても「新たにCOMをインストールせずに実行できる」って点がメリットになるけど
初期状態で入っていて「新たにCOMをインストールせずに実行できる」Scripting.Dictionaryを
使った方法より遅いのでは、何のメリットも無い
Cとかのまともな言語なら、ライブラリやコンポーネントを使った方法より劣っていても、アルゴリズムの
勉強や研究用として多少は価値あるかもだが、VBSではそういう方向の価値も無いし、完全にゴミ
VBS覚えたてでコード書くのが楽しくて仕方ない時期の初心者さんに言っても無駄かもだが
もう少し適材適所ってものを考えられるようになった方がいいかもな >>570
,、-'" ,、-';;;;;;;;;;;;;;;;;;;;;;;`''‐-、 ゙、、
,、-' ,、-'";;;;;;;;;ノ;;;;''-、;;;;;;;;;;;;;;;;;;;`''‐-、__ノ;;;\
/ ,、-'"::;;;;;;,、-'";;;;;;;;;;;;;;;`''- 、_;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;/ヽ;;;;\
. f_/;;;;;;;、-ニ';;;;;;、-‐ ''''""""''''‐-二、''‐-、___,ノ、 \;;;ヽ
. |;;;;;;;;,、ニ'";;、-'" `"ニ、;;;;;;;;;;;;;;\/;\;;',
. |,-,ニ '::/, -─ .,、-─-゙、-'、;;;;;;;;;;;、-、ノ;;;;)! ええっ!?
. Y::::::::/ .,、 -─- 、 ///:::::::::\ ';;;;;;/;;;;;;;;ヽノ
|::::::;' /://::::::::::ヽ '"""'' .、|:::l /::::::::::::::::ト|;;;;|;;;;;;;O;;;;';ヽ
ヽ:::|. |::l l::::::::::/,, .,-、.\:::::::::::::::::::ノ |;;;|;;;;;;;;;;;;;;;;';;;|
|::::| ̄ヾ;;;;;;;;;;;;/ /_| ヽJ ゙、── '" |;;;|;;;;;;;;;;;;;/;;;;;フ__
/|::::/. ,、_,、ヽ, ___ノ~"ヽ'l |:;;゙;;;;;0;;;:';;- '-"
| |::;'. l;;;;;;;;;;;-'""~__,,,`ヽ;;;;;;ノ |::;;;;;ヾ=;/''"
V:::| ,、-,'二──---、) ./:;;;;;;;;;;;;/-────
`|:|! ,、'ヽ'" _ _/:;;;;;;;;;;;;/ ____
|:|;', `" :::::: ,、-'"/:;;;;;;;;;/-─ '"
|:|;;\ ,、-'" /二フ
|:|;;;;;;;`' .、 _,、-‐'"-'",、-'" ̄
. |:|;;;;;;;;;;;;/ >.、 ,、-‐'",、-‐'" /_,,,、---──-- 、,,__
|:|;;;;;;;;;;/ / -`'" ,、-' ./-'" `"'-、
||;;;;;;;;;/ .ヽ 、__,、-‐'" , _,、-'" >>570
____
/ ⌒ ⌒ \
./( ―) ( ●) \
/::⌒(_人_)⌒::::: |
| ー .|
\ / 悔しいけれど論理的な反論が出来ない時にAA使う癖はまだ直らないんだな >>569
丁寧にありがとう!
直接ではなくわざわざインデックスを用いるメリットがわからないや! WMIってADの鯖側で動かさないと他のクライアントの情報って取って来れないよね? /゙ミヽ、,,___,,/゙ヽ
i ノ 川 `ヽ'
/ ` ・ . ・ i、
彡, ミ(_,人_)彡ミ にゃーん
∩, / ヽ、, ノ
丶ニ| '"''''''''"´ ノ
∪⌒∪" ̄ ̄∪ どっかから集めたコードを切り貼りして大文字化しただけのものなんて
価値無しなので貼らなくていいよ '# Baidu IMEがインストールされているかチェックして、インストールされていれば、アンインストーラーを起動するバッチを作ったよ
'# メモ帳に以下の内容を貼り付けて「baidu_check.vbs」というファイル名で保存。
'# 「baidu_check.vbs」をダブルクリックして【Baidu IME】がインストールされているかチェック Option Explicit
'#--------------------------------------
' 管理者になーる
Dim WMI, OS, Value, Shell
do while WScript.Arguments.Count = 0 and WScript.Version >= 5.7
Set WMI = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\.\root\cimv2")
Set OS = WMI.ExecQuery("SELECT *FROM Win32_OperatingSystem")
For Each Value in OS
if left(Value.Version, 3) < 6.0 then exit do
Next
Set Shell = CreateObject("Shell.Application")
Shell.ShellExecute "wscript.exe", """" & WScript.ScriptFullName & """ uac", "", "runas"
WScript.Quit
loop
'#--------------------------------------
Dim objShell, ret
Set objShell = CreateObject("Wscript.shell")
Dim winName: winName = "【Baidu IME】インストールチェック"
On Error Resume Next
If IsNull(objShell.RegRead("HKEY_CURRENT_USER\SOFTWARE\Baidu\")) Then
ret = objShell.Popup("このパソコンには【Baidu IME】はインストールされていません。", , winName, vbOKOnly Or vbSystemModal)
Else
On Error GoTo 0
ret = objShell.Popup("このパソコンには【Baidu IME】がインストールされています。" & vbCrLf & _
"【Baidu IME】をアンインストールしますか?" & vbCrLf & _
"(【猫耳】に泣きつかれても断固アンインストール!!)", , winName, vbYesNo Or vbSystemModal)
Select Case ret
case 6 objShell.Exec(objShell.RegRead("HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\Baidu IME\UninstallString"))
case else WScript.Quit
End Select
End If >>589
>>590
Baidu IMEが「入力情報送信しない」でもサーバーに情報を集めていた件の対応か。
すばらしい。
あれって、アン・インストールが普通の手順ではできないって聞いたが。 ∠Y"´゙フ
;' ゝ‘,,ェ) あけおめー
; '(,,゚∀゚)
゙;(ノ ';)
ヾ,;' ';
''∪''∪ このスレも桃白白の遊び場みたいだから有効利用しようね このスレも桃白白の遊び場みたいだから有効利用しようね このスレも桃白白の遊び場みたいだから有効利用しようね でも桃白白は有効なコード書けないけどね
オナニーで自分ではスゴいつもりらしいコードは何度も晒してるけど
バグだらけか、皆当たり前に使ってる手法かのどちらかで
有効利用できるようなものを書いた試しがない
まあ超初心者の質問に対しては、有効な回答をしたこともあったけど
ちょっと質問のレベルが上がると、まったく答えられないし NAOの気まぐれ独り言:他人を下げる
http://adviser70.ti-da.net/e3259555.html
世の中には、自分の自信やプライド、存在価値や存在意義を保つために“他人を下げる”ことをする人がいます。
(他人を下げるとは、他人をバカにしたり、見下したり、軽視することです。)
コレが良い悪いという話は置いといて、この“他人を下げる”行為について今日は考えてみました。
僕は“他人を下げる”ことは、人間の“自己防衛本能”の一種だと思っています。
人間はとても繊細な生き物ですからね。
特に、自信やプライドは傷つきやすく壊れやすいものですから、皆、それを必死に守ろうとします。
(ただし、本物の自信やプライドは簡単には傷つきませんし、壊れません。)
また、存在価値や存在意義は人によって違い、何が正解という明確な“答え”がなく、自分を保つのには自分自身の強い意志や独自の価値観が必要となります。
でも、強い意志や独自の価値観なんて、そう簡単に得れるものではありません。
だから、“他人を下げる”んです。
だから、自分が傷つかないように、また自分を保つために“他人を下げる”んですよ。 Twitter / jack69xz: 他人を下げることしか自分を上げれないならもう同列以下でいいじ ...
https://twitter.com/jack69xz/status/296338741096747008
他人を下げることしか自分を上げれないならもう同列以下でいいじゃん〜つまんねえ奴だな〜 否定しない生き方 - 院長ブログ「幸せってなぁに?」
http://blog.goo.ne.jp/minamiaoyama_dental/e/64aaa4363fd92fb87726a6e508ec3b4e
人と比べる生き方をすれば、自分が上がるか、相手が下がるかのどちらかになります。
自分が上がるのは大変ですが、他人を下げる事は簡単です。
こういう心理が働いて、無意識で相手の足を引っ張ったり、相手を否定する発言をしてしまうのではないでしょうか?
長い時間かけて身についた悪い癖は、同じぐらいそれを取り除くのに時間がかかります。 拾いモノ。通常はSendToフォルダ経由またはD&Dでファイルを指定する
Option Explicit
Dim WS,FSO,ie,Ags,Ag0,I
Set WS = CreateObject("WScript.Shell")
Set FSO = CreateObject("Scripting.FileSystemObject")
Set ie = CreateObject("InternetExplorer.Application")
Set Ags = WScript.Arguments
Ag0 = ""
If Ags.Count > 0 Then
For I = 0 to Ags.Count - 1
Ag0 = Ag0 & Chr(34) & FSO.GetAbsolutePathName(Ags(I)) & Chr(34) & vbCrLf
Next
Else
Ag0 = Chr(34) & FSO.GetAbsolutePathName(".") & Chr(34) & vbCrLf
End If
ie.Navigate "about:blank"
Do Until (ie.Busy = False) or (ie.Document.ReadyState = "complete")
WScript.Sleep 10
Loop
ie.Document.ParentWindow.ClipboardData.ClearData
ie.Document.ParentWindow.ClipboardData.SetData "text", Ag0
WScript.Echo(Ag0 & vbCrLf & "以上の文字列をクリップボードへ格納しました。")
Set Ags = Nothing
Set ie = Nothing
Set FSO = Nothing
Set WS = Nothing
WScript.Quit() >>602
> 拾いモノ。通常はSendToフォルダ経由またはD&Dでファイルを指定する
しばらく、VBSコードから遠ざかっていたけど、
これって、単に、SendToやDDで指定したファイルの.GetAbsolutePathName()
をクリップボードに格納するだけ???
単にそれだけ???
それだけで、こんなに長く直感的でないコードとなるのが VBS なのか? もともとVBSにはクリップボード操作機能は無いからね
たかが
> それだけで、こんなに長く直感的でないコードとなるのが VBS
なのではなく、
どんな言語でもサポートされていないことをなんとかして実現しようとすれば
直感的とは言えないコードになるのは仕方のないこと
逆に言えば、コードが長く複雑になることを許容すれば
サポート外の機能さえ実現方法があるのがVBS
まぁ、直感的に使える機能だけを使ったコードしか書いたことの無い人には
理解できない世界かも知れないが うろ覚えだが>>602は昔のWindows95やWindowsNT4.0でも正常に動く命令しか使われてなかった気がする
(少なくとも俺のWindows7+IE11では正常に動いたし、//uオプション付で起動すればUnicodeファイル名も問題なく扱える)
それ以外の方法(例えば ttp://www.vector.co.jp/soft/win95/util/se098868.html のようなフリーソフト)で
同じ事をやろうとすると、どうしてもOS毎の互換性をもっと気にする必要があるから心情的に手を出しづらいかも知れない 「コンピュータ連続運用時間計測」
(常駐型ではない。ローカルグループポリシーエディターおよびイベントビューアを使えるPC環境でないと無意味)
以下のテキストファイルを適当な名前で保存し、拡張子を.txt→.vbsに変えると使える
使い方や注意点などはテキスト内に書いてあるので、必ず読む事
ttp://alp.jpn.org/up/s/21848.txt (このアップローダは1年4〜5ヶ月くらい持つようだ) Explzh(フリーのアーカイバ)とExplzh用FTPクライアントアドオンの両方をインストール済の環境において
FTP接続ダイアログ表示を自動化するスクリプト
元々どっかのブログで拾ったものに手を加えて、Explzhのインストール先をレジストリから取得する方式に変えた
そのためインストール先に関係なく、そのまま使える
Dim WS,strPath,strExe
Set WS=WScript.CreateObject("WScript.Shell")
strPath = WS.RegRead("HKEY_CURRENT_USER\Software\Pon\Explzh\Folders\ExplzhDir")
strExe = "EXPLZH.EXE"
WS.Run Chr(34) & strPath & strExe & Chr(34)
WScript.Sleep 500
WS.AppActivate strExe
WScript.Sleep 500
WS.SendKeys "^l"
Set WS=Nothing
WScript.Quit() >>608
このスレに来てまでExplzhの作者をからかうとは何て奴だ ' 0.1秒単位で好きな時間ウェイトをかけるスクリプト
Option Explicit
Dim WshShell, lngSec, corAg
Set WshShell = CreateObject("WScript.Shell")
Set corAg = WScript.Arguments
'
lngSec = 10 ' 引数省略時は待ち時間を1秒(=10×100ミリ秒)とする
If corAg.Count > 0 Then lngSec = corAg(0)
lngSec = CLng(Trim(lngSec)) * 100
WScript.Sleep lngSec
'
Set WshShell = Nothing
Set corAg = Nothing
WScript.Quit() DOSコマンドで実行できるんでしょ
普通は1秒単位でしかできないから sleep.exeは同名フリーソフトまたは別売りリソースキット内の物を使うしかない
timeoutコマンドはVista以降のWindowsにしか搭載されてない上に、1秒単位でしか待ち時間を指定できない
>610なら古いWindows95などでも(WSHがあればの話だが)そのまま実行できたはず まんどくさいなぁ・・・オレならこうする
echo wscript.sleep 3000 >temp.vbs & cscript temp.vbs
あと、1秒単位のラフなsleepなら、pingを流用するのが定石じゃなかろうか ブロックスコープをやりたいのだが
Rem Blockscope.vbs
Option Explicit
Sample
Function Sample()
Dim I
I = 10
I = Used
Msgbox Typename(I) 'Variant()
Rem I = 20 'Error at Erase I
Rem Set I = Nothing 'Error at Erase I
Erase I
End Function
Function Used()
Dim J()
Used = J
End Function
人力でErase I てのがバカっぽい
なんとかなりませんか 【カワイイ】海外メディアが報じた美人過ぎる議員候補者 美しい国ニッポン!なぜこんなに議員候補者が可愛いのか?と話題に【KWAII】
ttps://www.youtube.com/watch?v=uI59ogPcazE >>615
ローカル変数宣言したら負けただと思うよ
Option Explicit
Sample ""
Function Sample(I)
I = Used
Msgbox Typename(I)
End Function
Function Used()
Used = Array()
End Function システムの起動が、通常起動なのか、再起動なのかの識別する方法を考えています。
今のところ、ログオフからログオンまでの時間の違いにより識別する方法しか発想できませんです。
しかしこの方法は、100%確実でないので、他の方法があればヒントをお願いします。 つまり、電源を切ったか、切らなかったか、ってことかな >>620
PCの主電源は、再起動の時、切るタイプと切らないタイプがあるようです。
なので、その判別方法は、使えないと思います。
ところで、主電源のON-OFF判別はどのような方法でしょうか? >>619
シャットダウンイベントの追跡ツールを有効にして、イベントログを確認 >>617
下のMsgBoxを広告の上においてみなよ
文字を増やすと、ウインドウが大きくなって、効果てきめん
MsgBox "広告バスター 広告バスター 広告バスター" サッカーブッシュ日本代表日程ぷあたん(しゅっちょうまいくろ教育長交代)春文執行40代売上差額シュガーチョコ
https://www.youtube.com/watch?v=NDq1QoJY0nY宇ドナルドアナリストパワーストーンコーチングとしまえん
サッカーブッシュ日本代表日程古本屋よしたけしゅっちょうちょこしゅがー
ディーラー税務署天才開発者死亡詰みヨミドクターマイクロサービス不足
サッカーブッシュ日本代表日程ぷあたんシフト光金さかい強制バイト人権侵害問題
春分資源執行ニューヨーク低原価ぼったステーキソルトレイク福岡横浜新橋奴隷課金パチシフト強制バイト問題新潟米センター生残
コスメ24チャリティー隠れ40代生活保護プレイボーイバイトレードいたりあん接待問題
マスコミKARDローンケーオーサービス不足婚活パーティー寄付金執行原発ビジネス
FBIチャイニーズタイホテル売上事務所ガチャ決算ガチャキャンペーン(販売報道陣過激派組織向携帯最新情報提供終了
校長発言細心注意ノートン産廃エラー(著作権クレーム中国反応融資高額教育費)(中国捕鯨団体40代社員サッカーコメント
高額入学金ヤフウ新橋大学ヤフウ新橋理事長FX経費 おじや50代資産ガリバズフィード40代エリート '// テキストファイル名の配列を受け取って、結合した内容をクリップボードにコピーするスクリプト
Option Explicit
Dim txtArry
With CreateObject("Excel.Application")
.DefaultFilePath = "C:\"
txtArry = .GetOpenFilename("テキストファイル,*.txt;*.csv",,,,True)
If IsArray(txtArry) Then
If Ubound(txtArry) > 0 Then Call TextCopy(txtArry)
.Quit
Else
WScript.Echo "キャンセルされました。"
.Quit
End If
End With
Sub TextCopy(txtArry)
Dim i
Dim txtStr
With CreateObject("Scripting.FileSystemObject")
For i = 1 To UBound(txtArry)
With .OpenTextFile(txtArry(i))
txtStr = txtStr & .ReadAll & vbCrLf
.Close
End With
Next
End With
CreateObject("WScript.Shell").Exec("clip").StdIn.Write(txtStr)
WScript.Echo "クリップボードにコピーしました。"
End Sub '// .vbsファイルのアイコンにドラッグした複数ファイルのフルパスリストをクリップボードにコピーするスクリプト
Option Explicit
Dim i
Dim fileNames
With WScript
For i = 0 to .Arguments.Count - 2
fileNames = fileNames & .Arguments(i) & vbcrlf
next
fileNames = fileNames & .Arguments(i)
CreateObject("WScript.Shell").Exec("clip").StdIn.Write(fileNames)
.Echo "ファイルリストをコピーしました。"
End With 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
XDVRR ショートカットを『スタートにピン留め』
フォルダを『クイック アクセスにピン留め』
Windows10なのでよろしく。 ピラフの環境だと
Verb.DoItを2回呼ばないと反映されなかったんだよね
なんなんだろこれ >>635
どうせどっかのコピペだろ。
お前のコードはいちいちスタイルが違い過ぎる。
氏ね。 >>636
形に拘ってるようじゃピラフには一生勝てないよ 見せてやるよ、形式に囚われないピラフの究極奥義
SUB SWAP(A, B, C)
C = A
A = B
B = C
END SUB
SUB SORT(A, I, J)
FOR I = 1 TO UBOUND(A)
FOR J = 1 TO UBOUND(A)
IF A(J - 1) > A(J) THEN SWAP A(J - 1), A(J), EMPTY
NEXT
NEXT
END SUB
SUB MAIN(A)
A = ARRAY(5,4,3,2,1)
SORT A, EMPTY, EMPTY
WSCRIPT.STDOUT.WRITELINE JOIN(A, ",")
END SUB
MAIN EMPTY ローカル変数を最小にすることによってバグを最小化できる
これこそがVBScriptプログラミングの真髄 こいつまだいたのかよ
一生ソートやってそうwwww 競技プログラミングですでにやってるわ
そんなのアスぺ自慢にもならない そりゃお前だからだろ
スレの趣旨も理解できてなさそうだし
そろそろ出てきても大丈夫とか思っちゃったんだろうか お前が来なければ何の問題もないんだよ
バブルソートも満足に組めないゴミのくせにww >>7-8
うまく動かないのは、
> PASS_WRD = PASS_WRD + "2 3 4 5 6 7 8 9 2 3 4 5 6 7 8 9 2 3 4 5 6 7 8 9 "
と
> MOJISYU_C = MsgBox("記号を使いますか?",vbYesNo)
の間に
End If
が抜けているからだ。
11年半待たせたな。 >>646
>>638で完全な実装を我は示した、それでも満足できぬと申すか?
どうなんだ? おん? ピラフのバブルソートに満足できないなら何が不満かを言いなさいよ こいつバカだから聞き出そうとしてんだろ
テメーの教育スレじゃねえよ >>652
バブルソートも満足に組めないと言ったから
どこが不満なのかお聞きしたのに答えられないって
なんなのそれ、パーフェクトバブルソートってことでいいね? 言っとくけどピラフの奥義はバブルソートだけじゃないから
君たちがのんべんだらりと怠惰な生活を送ってる間に
ピラフは厳しい修行を積んで圧倒的成長を遂げたから >>653-654
だからスレ違いだって言ってんだよバカ >>656
てめーに来る権利なんかないんだよ
スレ違いだって言ってんだバカ >>657
静かにしろよ、子どもが起きるでしょうが!! >>658-659
微妙に方向を変えてレスされないよう工夫してるつもりのバカ >>660
子どもには寝る権利がある、君は優しい人だから子どもには手を出せない
君の負けだよ、子どもがどうなっても良いのか! ところでさ黄金のハンマーがあったら何でもかんでも叩きたくなるっていう
プログラミング業界で広く知られた寓話があるけれども
ピラフは厳しい修行を積んで習得した奥義を披露したくて仕方がないよ
実験台になってくれる? 昔から嫌われてるようだけどこの態度を見れば当然だよな >>663
でも君はボッチじゃん
ピラフもボッチじゃん
これからもボッチコンビとしてやっていこうよ
君はピラフのこと嫌いじゃないでしょ? それで十分だよ >>665
いいじゃん、どうせ誰も書き込まないし
スレが埋まったらまたスレ建てればいいし
何を気にすることがあろうか
いまどきVBScriptの話する人なんて
ピラフと変態の君くらいだよ まあどうせ自分のレスを最後にして終わりにしたいだけだろ
こいつバカだから ちなみにピラフの奥義は配列に関するものです
Array(Array(Array("a"), "b"), "c")
こういう入れ子になった配列を
Array("a", "b", "c")
というように平坦化します
名付けてフラッテンです >>667
あまり変な綾つけてるとフラッテンを発動せざるを得ないが? 嫌がらせをするために生まれてきたとしか思えないようなクズだよな >>673
秘奥義フラッテンを伝授してやっても良いけど? フラッテンというのはArray(Array("a"))このように
入れ子になった配列をArray("a")このように平坦化するメソッドです
VBScriptは配列を中心にプログラムを組み立てる
Array Orietedな言語と言っても過言ではありません
それくらいVBScriptにとって配列は重要なデータ構造であり
いかに配列とうまく付き合うかがプログラムの出来を大きく左右します
フラッテンを知ることでVBScriptで信頼性の高いプログラムを
作ることができるようになります まず、フラッテンによってどのようにデータが変換されるのかを学びましょう
Array("a") => Array("a")
もともと平坦な配列はそのままです
Array(Array("a")) => Array("a")
入れ子になった配列は平坦化されます
Array(Array(Array("a"))) => Array("a")
入れ子が入れ子になっていても平坦化されます
Array("a", Array("b", Array("c"))) => Array("a", "b", "c")
値と配列が混在して格納されていても平坦化されます
どうです? フラッテンの威力はすごいでしょう? >>679
フランケンは人造人間を作った博士のこと
フラッテンはピラフが厳しい修行の末に身に着けた奥義
フリテンはちんちん丸出しのこと すごいでしょ?と言われたってなぁ…
明日検証してみるけど、もし正しいとして、これが役に立つ場面より役に立たない場面の方が多い。
配列が重要なデータ構造?
馬鹿じゃないのか?
配列はどうしようもなく仕方なく使うという以外に使ってはいけない過去のもの。 相変わらずスレの私物化が甚だしいな
伝授とかいってるけど覚えたことを逐一報告したいだけだろwww >>682
配列を使わないってよりは
配列みたいなプリミティブはラップして使う >>683
じゃー君はピラフから教わらずに実装できるのかい?
できないだろう、自信がないだろう、じゃー素直に教わったら良いよ ピラフが上流工程担当で仕様と設計を担当します
>>682は詳細設計から先をお願いします >>688
連投するほど動揺するくらいなら大人しく引っ込んでろよw はいみなさんこんばんわ
フラッテンプロジェクトの進捗報告会を始めます 仕様と設計は先日終わりました
詳細設計と実装はいま何%くらいでしょうか?
>>693ご担当の方からご説明頂いてもよろしいでしょうか? :: .|ミ|
:: .|ミ|
:: .|ミ| ::::::::
::::: ____ |ミ| ::::
:: ,. -'"´ `¨ー 、 ::
:: / ,,.-'" ヽ ヽ、 ::
:: ,,.-'"_ r‐'" ,,.-'"` ヽ、 ::
:: / ヾ ( _,,.-='==-、ヽ ヽ、
:: i へ___ ヽゝ=-'"/ _,,> ヽ
:: ./ / > ='''"  ̄ ̄ ̄ ヽ
:: / .<_ ノ''" ヽ i
:: / i 人_ ノ .l
:: ,' ' ,_,,ノエエエェェ了 /
i じエ='='='" ', / ::
', (___,,..----U / ::
ヽ、 __,,.. --------------i-'" ::
ヽ、_ __ -_'"--''"ニニニニニニニニヽ ::
`¨i三彡--''"´ ヽ ::
/ ヽ :: ┼ヽ -|r‐、. レ |
/ ヽ:: d⌒) ./| _ノ __ノ 都合の悪い事には一切触れないのはいつものこととしても、
自分の立てた糞スレはもう無かったことになってんのかよww
これもしかしてVBSに限定しないでなるべく人を集めたかったのかな?
実質誰にも相手にされてないからってこっちくんなよガイジ
https://mevius.5ch.net/test/read.cgi/tech/1536155434/ 手抜きレスでだいぶ面倒くさそうだけどだったら引っ込んでろよガイジ
この糞スレ見れば分かるようにお前なんか誰からも必要とされていない
https://mevius.5ch.net/test/read.cgi/tech/1536155434/ やだ!
ピラフ他人の指図受けたくない!
ピラフ自由にやりたいだけ!
お前らがどうなろうと知った事ない ._
\ヽ, ,、
`''|/ノ
.|
_ |
\`ヽ、|
\, V
`L,,_
|ヽ、) ,、
/ ヽYノ
/ r''ヽ、.|
| `ー-ヽ|ヮ
| `|
|. |
ヽ、 |
ヽ____ノ
/_ノ ' ヽ_\
/(≡) (≡)\
/::::::⌒(__人__)⌒::::: \
| |r┬-| |
\ `ー'´ /
/ \
( | | )
\| э |/
( ,,,, ,ノ
\ 、(U)ノ ノ
\/ / ┼ヽ -|r‐、. レ |
/ /\ d⌒) ./| _ノ __ノ
⊂⌒__)__) >>704
すごいどうやったの?
ちんちんの話じゃなくてトリップどうやったの?
ハッシュ値を総当たり? 辞書を片っ端から調べた?
文字種が英数字58文字、文字列長が12だとして70ビットくらいでしょ
ハッシュ値の総当たりでやったとしたらすごい
できるもんなんだね
ちなみにピラフのトリップはこれ
Rembrandt Harmensz. van Rijn
レンブラント・ファン・レイン、画家の名前、すごくおしゃれ ピラフって可愛くて天才で皆から慕われる人気者でしょ
だから妬みたくなるのは至極当然なの
といってもピラフを騙るなんて恐れ多い真似は普通はしないでしょ
あまりにショックだからピラフ死のうと思うの
でもピラフが死んだらみんな悲しむよね
だから死なない 君はピラフに成りたかったんだね
良いよ、君が今日からピラフだ >>705
トリップキーなんか数年前に流出してるのに何がしたいんだオメーわ
QZもそうだけどそんなの知ってて使い続けてるんだってば
お前はそうやってピラフの背中を追い続けてるといいよ
ピラフを追い越すことなんか一生できないから >>708
ピラフの大事なトリップが流出してただと・・・なんだと・・・
じゃあいままでピラフと名乗ってたのは全部・・・ ____
/⌒ ⌒\
/( ●) (●)\ フリチン?なにそれ
/::::::⌒(__人__)⌒::::: \ ピラフ超絶美少女だから無理
| |r┬-| |
\ `ー'´ / 差し支えなければおパンツの色を教えてもらっても良いでしょうか? >>714->>716
∩∩∩ ∩∩∩
.∩_:||_:|_:| |_:||_:|_:∩
│ ___ つ ⊂ ___ │
ヽ ノ ___ ヽ ノ
/ / /_ノ ヽ、_\ ヽ \
( く o゚((●)) ((●))゚o > ) クソレスすんなバーカ
\ `/::::::⌒(__人__)⌒::::\' /
ヽ| |r┬-| |/
. \ | | | /
| | |
`ー'´ それじゃあ出題するね。
あるフォルダの中にある、ファイル名とファイルの中身を一気に置き換えるプログラムを作れ。
できるかな〜? 何に置き換えればいいん?
サンプル書いてもらえると助かる Sample{{痴漢前}}.txt → Sample{{痴漢後}}.txt
こんな感じで。 ファイルの中身に「{{痴漢前}}」があれば、すべて「{{痴漢後})」に置換。
ファイル名もしくはフォルダ名に「{{痴漢前}}」があれば、「{{痴漢後}}」に置換する。 Ruby で作った。
あるフォルダ内のすべての、*.txt ファイルを置換する
1か所も置換されなかった場合でも、File.write で上書きされるので、
置換されない場合は、next ですぐさま、次の繰り返しへ進む
re = /before/
# . で始まる、directory, file を除く
Dir.glob( 'C:/Users/Owner/Documents/Ruby/test/test43/*.txt' ) do |file|
text = File.read file # すべて読み込む
next unless text.match( re ) # マッチしない
text.gsub!( re, "after" ) # すべてを置換
File.write file, text # 上書き
end Sub ReplaceFile(folderPath, srcString, destString)
Call ReplaceName(folderPath, srcString, destString)
Call ReplaceContent(folderPath, srcString, destString)
End Sub
Sub ReplaceName(folderPath, srcString, destString)
Dim fileSystem
Set fileSystem = CreateObject("Scripting.FileSystemObject")
Dim folder
Set folder = fileSystem.GetFolder(folderPath)
Dim file
For Each file In folder.Files
Dim destFile
destFile = folder.Path & "\" & Replace(file.Name, srcString, destString)
Call file.Move(destFile)
Next
Dim subFolder
For Each subFolder In folder.SubFolders
Dim destFolder
destFolder = folder.Path & "\" & Replace(subFolder.Name, srcString, destString)
Call subFolder.Move(destFolder)
Next
End Sub Sub ReplaceContent(folderPath, srcString, destString)
Dim fileSystem
Set fileSystem = CreateObject("Scripting.FileSystemObject")
Dim folder
Set folder = fileSystem.GetFolder(folderPath)
Dim file
For Each file In folder.Files
Dim text
Dim inStream
Set inStream = file.OpenAsTextStream(1)
text = inStream.ReadAll()
Call inStream.Close()
text = Replace(text, srcString, destString)
Dim outStream
Set outStream = file.OpenAsTextStream(2)
Call outStream.Write(text)
Call outStream.Close()
Next
End Sub >>724-725
フォルダの入れ子が処理できてない点を除けば、上手く書けている。
フォルダの入れ子を処理する簡単な方法は、再帰を使うことだ。 フォルダの中にフォルダが存在すると
Call subFolder.Move(destFolder) <-ここでエラーになる
Microsoft VBScript 実行時エラー: 書き込みできません。 >>726
フォルダたどるときに再帰呼び出しすればいいですね、ご査収ください
https://gist.github.com/sleeping-marple/512b86feb470296c5a48e00365dd3418
再帰の話が出ました、今度は私からアリさんそしてルビーさんに再帰に関する問題を出します
ちょっと待っててください、問題作るので 準備できました、それでは問題を出します
一次元の配列を元に罫線素片を使用してトーナメント表を出力してください
Array("A","B","C","D","E","F","G","H","I","J")
↑の配列を元に↓の出力を得る
https://light.dotup.org/uploda/light.dotup.org548029.png :: .|ミ|
:: .|ミ|
:: .|ミ| ::::::::
::::: ____ |ミ| ::::
:: ,. -'"´ `¨ー 、 ::
:: / ,,.-'" ヽ ヽ、 ::
:: ,,.-'"_ r‐'" ,,.-'"` ヽ、 ::
:: / ヾ ( _,,.-='==-、ヽ ヽ、
:: i へ___ ヽゝ=-'"/ _,,> ヽ それでは・・・問題を・・
:: ./ / > ='''"  ̄ ̄ ̄ ヽ
:: / .<_ ノ''" ヽ i
:: / i 人_ ノ .l
:: ,' ' ,_,,ノエエエェェ了 /
i じエ='='='" ', / ::
', (___,,..----U / ::
ヽ、 __,,.. --------------i-'" ::
ヽ、_ __ -_'"--''"ニニニニニニニニヽ ::
`¨i三彡--''"´ ヽ ::
/ ヽ :: ┼ヽ -|r‐、. レ |
/ ヽ:: d⌒) ./| _ノ __ノ >>730
相変わらず中学生レベルの下手くそだな。
新人に「これ、駄目な例ね」って出せるからどんどん書いてよ。下手くそコードを。 後学のために3回読んだ。
進歩の無さに感心する。
あらゆる「駄目」が詰まってる。
ある意味凄い。 >>723
を修正。Ruby で作った
1か所も置換されなかった場合でも、File.write で上書きされるので、
置換されなかった場合は、next ですぐさま、次のファイルへ進む
re = /before/
# . で始まる、directory, file を除く
Dir.glob( 'C:/Users/Owner/Documents/Ruby/*.txt' ) do |file|
text = File.read file # すべて読み込む
updated = false # 未更新
text.gsub!( re ) { |matched| updated = true; "after" } # 置換
next unless updated # 未更新なら
File.write file, text # 上書き
end Rubyジジイはガチアスペだからね
会話も噛みあわないから始末が悪い >>739
クラスを作ろうとしって何かしようとした時点で >>731 より少しマシなレベルかもだが、
分不相応なことをやろうとしたせいで圧倒的にクソ。
下から上に書くとか馬鹿じゃね?てか馬鹿だろ。
トーナメント表を横に出力するように仕様変更が入ったら全滅。いちから書き直し。
データ構造構築と表示を分けてないからそうなるんだよボケが。
クラス名とかファンクション名とか変数名の付け方とか、
「第三者が読むこと」
を意識して書いたことあんのかお前?
センス無いからもう書くな。片山無職MZよ。 無職じゃないよ。かなりきつい炭鉱の仕事を続けてるよ。 片山は煽りには乗らないと思ってたけどそうでもなかったん?
まあピラフ扱いされたらこうなるのも仕方ないと思う >>741
とりあえず、模範解答とすれば、>>731 の出題条件を満たしつつ最も簡単書けるのが模範だな。
Option Explicit
Dim Teams
Teams = Array("A","B","C","D","E","F","G","H","I","J")
Call WScript.Echo(" ┌───┴─────┐ ")
Call WScript.Echo(" ┌─┴─┐ ┌─┴─┐ ")
Call WScript.Echo(" ┌─┴┐ ┌┴┐ ┌─┴┐ ┌┴┐")
Call WScript.Echo("┌┴┐ " & Teams(2) & " " & Teams(3) & " " & Teams(4) & " ┌┴┐ " & Teams(7) & " " & Teams(8) & " " & Teams(9))
Call WScript.Echo(Teams(0) & " " & Teams(1) & " " & Teams(5) & " " & Teams(6) & " ")
シードの既定も明示されてないのにマジで作る方がアホ。
ていうかあんたのコード、Win10環境だとテキストファイルに落とさないと崩れるんだけど?
> ' Usage: cscript TreeRecurse.vbs > Output.txt
ファイルに落とすの前提なら //nologo が抜けてる。
「トーナメント表を作る」は割と面白げなお題だから書いてみようと思うが、まずは既定から調べんとな。 ちなみに片山のコードは読めない。
斜め読みでなんとなくは分かるが自己中心的な汚さでムンムンなので読む気がしない。
ちょっと真面目に読もうとしたら気分が悪くなる。 >>739
アリさんおはようございます
すごい!完璧です、さすがです
一応出題者として回答例と解説も用意していましたが
必要なかったですね、私の想像を超える形で解決されてます
議論するのは良いですね、思考が広がります
惜しむらくはアリさんとルビーさんと私の3人だけで議論できるといんですけどね
招待された人しか参加できないような議論の場があるといんですけど
最近荒らしがひどくて落ち着いて議論できないんですよね
偽物のピラフも出没します
どれが本物のピラフかはアリさんだったらわかってくださるかと
文面は誤魔化せませんからね、その知性は隠しきれないですからね ああ、蟻人間は、片山先生か。
ピラフは、偽者が登場してるのかw
トリップが解読されたのか?
5ch は、桁数が少ないのを使っているのかな?
SHA256 じゃないのか? 解説しよう。
https://gist.github.com/katahiromz/57e2b01e15497af96e9b59921bfa9ff0
8行目。Sliceという配列の切り出し(スライス)をする関数を定義している。
引数のendingがEmptyならばstart以降を切り出す。
JavaScriptには同様の関数があるが、VBScriptでは用意されていないので定義した。
23行目。仮想画面という考え方でテキスト処理を行うTextAreaクラスを定義している。
メンバーのTextsが文字列の動的配列を、NumLinesが行数を、NumColumnsが桁数を表す。
26行目。Resetサブルーチンは、TextAreaにサイズを指定して初期化する。
36行目。GetText関数は、仮想画面を表すテキストを構築する。
44行目。Outputサブルーチンは、GetTextの戻り値をそのまま出力する。
48行目。SetCharサブルーチンは、指定した位置に1文字をセットする。
仮想画面の範囲外のときは、セットしないで無視する。 58行目。PasteTextサブルーチンはSetCharを使って文字列を仮想画面の指定された位置に貼り付ける。
65行目。PasteTAサブルーチンは、SetCharを使って別の仮想画面の内容を指定された位置に貼り付ける。
84行目。実際にツリーのテキストを作成するMakeTree関数。この関数が再帰を行う。
引数のRootPosは参照渡し(ByRef)で値を返すことができる。
RootPosは、根元の水平位置を表す。標準のUBound関数は、配列の添え字上限を返す。
87行目。配列の添え字上限がゼロならば、一文字を表す仮想画面を返す。
93行目。ゼロでなければ、配列を半分に分割し、Ary1とAry2に代入する。
97行目。実際に再帰を指示する。
101行目。根元の位置は、左仮想画面の桁数+1である。
103行目。再帰で得られた子の根元の位置をもとに、枝分かれのテキストを構築する。
106行目。TA1.NumLinesとTA2.NumLinesの最大値をCYに代入する。
113行目。再帰した結果を用いて新しい仮想画面を構築する。 >>751
お前がキチガイの限りを尽くして荒らしてくれてたからコテを取り上げてやったんだよ
キチガイの割にメンタルは弱いからよくコテと名無しを使い分けて自演してたけど、バカすぎてバレバレだったよな お題: VBScriptで日本語で「こんにちわ」としゃべらせる。 WScript.Echo("(*∩ω∩)<こんにちわ〜") ヒント: Text-To-SpeechとSAPIを使う。 :: .|ミ|
:: .|ミ|
:: .|ミ| ::::::::
::::: ____ |ミ| ::::
:: ,. -'"´ `¨ー 、 ::
:: / ,,.-'" ヽ ヽ、 ::
:: ,,.-'"_ r‐'" ,,.-'"` ヽ、 ::
:: / ヾ ( _,,.-='==-、ヽ ヽ、
:: i へ___ ヽゝ=-'"/ _,,> ヽ WScript・・・Echo・・
:: ./ / > ='''"  ̄ ̄ ̄ ヽ
:: / .<_ ノ''" ヽ i
:: / i 人_ ノ .l
:: ,' ' ,_,,ノエエエェェ了 /
i じエ='='='" ', / ::
', (___,,..----U / ::
ヽ、 __,,.. --------------i-'" ::
ヽ、_ __ -_'"--''"ニニニニニニニニヽ ::
`¨i三彡--''"´ ヽ ::
/ ヽ :: ┼ヽ -|r‐、. レ |
/ ヽ:: d⌒) ./| _ノ __ノ 片山無職MZの図
:: .|ミ|
:: .|ミ|
:: .|ミ| ::::::::
::::: ____ |ミ| ::::
:: ,. -'"´ `¨ー 、 ::
:: / ,,.-'" ヽ ヽ、 ::
:: ,,.-'"_ r‐'" ,,.-'"` ヽ、 ::
:: / ヾ ( _,,.-='==-、ヽ ヽ、
:: i へ___ ヽゝ=-'"/ _,,> ヽ グ。。。グギギ。。。
:: ./ / > ='''"  ̄ ̄ ̄ ヽ
:: / .<_ ノ''" ヽ i
:: / i 人_ ノ .l
:: ,' ' ,_,,ノエエエェェ了 /
i じエ='='='" ', / ::
', (___,,..----U / ::
ヽ、 __,,.. --------------i-'" ::
ヽ、_ __ -_'"--''"ニニニニニニニニヽ ::
`¨i三彡--''"´ ヽ ::
/ ヽ :: ┼ヽ -|r‐、. レ |
/ ヽ:: d⌒) ./| _ノ __ノ
片山先生の新作が読めるのはあの世だけ!! >>762
あんなに解説したのに理解できないなんて、黄身は白身か?! 黄身は白身か? それとも赤身なのか?
すり身なのか? あるいは切り身なのか? >>762
貴様は身の程知らずかも知れないが、センスが無い訳では無いかも知れない。
君の自宅にうちわがあるだろう? あれも一種のセンスだ。君もセンスを持っている。 _∬_
(⌒⌒)\≠/
L_亅∩ ̄ チリンチリン
(ω・ )ノ ≡=―
/ヽ: \ _ __ (⌒
0┬> )= ≡=(⌒∴
(*)//(*) (⌒(∴
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /⌒ ⌒\ ング ング
/ (●) (●)\
/::::::⌒(__人__)⌒:::: \ チュパチュパ
| ( \ |
\_ ヽυ ::\ /
\ .:::\
____
/⌒ ⌒\
/ (●) (●)\ /⌒\
/::::::⌒(__人__)⌒::::: \ ( ) チンチンだお!
| |r┬-| | | υ|
\ υー'´ / | |
|υ | 般 羯 多 呪 多 得 想 掛 所 亦 無 耳 不 是 異 蘊 観 仏
若 諦 呪 能 是 阿 究 礙 得 無 意 鼻 増 舎 色 皆 自 説
心 羯 即 除 大 耨 竟 ,r'""´`゙゙''、, 識 舌 不 利 色 空 在 摩
経 諦 説 一 神 多 涅 / l, 界 身 減 子 即 度 菩 訶
呪 切 呪 羅 槃 rヽ .,‐- ,- |. 無 意 是 是 是 一 薩 般
波 曰 苦 是 三 三 ヾ `゙" ,l ゙´| 無 無 故 諸 空 切 行 若
羅 真 大 藐 世 . _> -=='./ 明 色 空 法 空 苦 深 波
羯 実 明 三 _/|, `゙ヽー--ノヽ、,_. 聲 中 空 即 厄 般 羅
提 不 呪 rー'""l, 'l, / .| ||/`>、、 無 相 是 舎 若 蜜
虚 是 / | 'l, / .|./》/ ∧ 色 不 色 利 波 多
波 故 無 / , | ヽ ヽ,、/.@ / 《l,l / ヽ 無 生 受 子 羅 心
羅 説 上 / 、,ヽ|/ ヾ。ツ`' 「ゞ / /《ヾ /゙ヽ 不 想 色 蜜 経
僧 般 ./ ///l`゙'゙ー-'" / // ノ// //`l、 滅 行 不 多
羯 若 ,|. /// | |___,,,ノ≡≡ツノ//_,,-‐'"".l, 不 識 異 時
諦 =@ 波 | ///=@/| /二=‐'"´´/ /`゙゙'ー-、,_.l 垢 亦 空 照
羅 |/// / | /|三="´ / //"´´゙'ー、| 不 復 空 見
菩 蜜 ///ノ ノ ノ ノ‐-二‐'"´ ノ/r=、,_ー-、_| 浄 如 不 五 ノ凸\―――――イ\
Eノ金ゝヨ三三三三三Eフ
/ΛΛ/ |鬩鬩鬩鬩鬩
/(Д゚/_|卅丗卅丗卅
/ ̄ ̄/ロ |ニニニニニニニニニ]
[O王O]_r=ュ|___r=ュ]
ヽニノ ヽニノヽニノヽニノ . + .:. . .
+ :. . +.
. : . + . .
. :. .
. + Π
||
(二X二O
|| .+ .
∧∧ ||
/⌒ヽ)_||_
_〜( );;;;::\
" "" """""""" ""/;
"" """ ""/:; >>749さんも挑戦するみたいですね
私やアリさんとは異なるコードを期待したいです γ ⌒ ⌒ `ヘ
イ "" ⌒ ヾ ヾ
/ ( ⌒ ヽ )ヽ
( 、 , ヾ )
ゞ (. . ノ. .ノ .ノ
ゝ、、ゝ.....| |..., , ノソ
_....,,. .-ー;''! i;;;〜−ヽ_
γ ,〜ー'''l ! |'''ーヾ ヾ
( ( |l | ) )
ヾ、 ⌒〜"""''''''⌒〜'"´ ノ
""'''ー-┬ーr--〜''""
| |
ノ 从 ゝ
,r´⌒ヽ,⌒ヽ,ヽ
(⌒)、 .人 λ\、 ._____
\. \ 、 ヽ./ ー ー\
|\ \ ヽ./ ( ●) ( ●)
| \ \ / (__人__) \ 期待したいです
|. \ | ` ⌒´ |
. |. |.\_ノ\ /
. |. | | \______/
. | ) .| . . ̄ ̄
. | | .|
| |.| .|
. | | .| .|
/ / / ヽ,
(__ノ ヽ、__つ アリさんおはようございます
すごい!完璧です、さすがです
⌒|/⌒ヽ、_ノ⌒ヽ、_ノ⌒ヽ、_ノ⌒
ヽ ____
/ |::⌒\
/ _ノ|::(●)\
表 / o゚⌒ |ヽ__)⌒::::\ 裏
|::. (__ノ|r-|:::::::::::::::::::|
\::. ´ |ー´::::::::::::::/
∧
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄\
ピラフを舐めやがって糞コード晒すなや
でも片山とまで対立したら孤立しかねないから
今は穏便に振る舞っておくお >>756
パンクハザードでルフィの仲間たちがローの能力で中身を入れ替えられたことあったじゃん
面白かったよねあれ、というわけで下記の文字列について
Dim s
s = "" _
& "ナミは監禁されて非情な実験台にされている子どもたちを放って置けず" _
& "助けようとし、チョッパーは子どもたちが違法な薬物を投与されて" _
& "いることに気づきナミと共に子どもたちのもとに向かいます。" _
& "サンジはナミを襲おうとする敵を蹴散らし、フランキーはチョッパーが" _
& "止めるにもかかわらず大暴れするのでした"
次のように文字列を置換してください
サンジ → ナミ
チョッパー → サンジ
ナミ → フランキー
フランキー → チョッパー 片山の野郎、さっさと出てきて擁護しろや
ピラフに恥をかかすんじゃねえお
⌒|/⌒ヽ、_ノ⌒ヽ、_ノ⌒ヽ、_ノ⌒
ヽ ____
/ |::⌒\
/ _ノ|::(●)\
裏 / o゚⌒ |ヽ__)⌒::::\ 表
|::. (__ノ|r-|:::::::::::::::::::|
\::. ´ |ー´::::::::::::::/
∧
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄\
あったじゃん
面白かったよねあれ 解説しよう。
DELという特殊文字が使われていないことを仮定し、ターゲットの文字列をいったんDELと数字がくっついた文字列に変換する。さらに
DELと数字がくっついた文字列を置換先文字列に変換する。
これで一度に置き換えした文字列操作と同じ効果になる。 DELがすでに使われている場合は、エスケープシーケンスと同様に、DELを二重化しといて、後で元に戻すとよい。 >>775
漏れ以外に、Rubyist がいたのか?
君は誰? まさか、ピラフが進化した??
ちょっと見ない間に、漏れを軽々と抜き去っていったか!w _,, ---一 ー- ,,,_
、 _,,,, _,, -.'" ` 、
ミ三ミ三ミ三ミミ ヽ_,
-==三ミ彡三ミミ ,,=-== ==、 iミ=-、_
_,,ンミミ三ミ三ミミ] -彡-一 ー-、 r一 ーミ、|ミミ三ミ=-'
_, -==彡ミ彡ミミミ| ン| ,=て)> (|ー| ,て)>、 ||三ミ彡==-'
,彡彡三ミ三ミミiレ'~ .|. ' | ヽ ` |ミ三彡三=-
(_彡三ミ彡ミミミ' ヽ、 ノ \__ノiミ彡ミ三=ー
ー-=二三ンーミミミ `ー /(_r-、r-_) .|彡ミ三=-、
)(_ミ彡ミ| i' ヽヽミ | : : : __ : :__: :i .|彡ミ三=-、
と彡ミ彡ミヽヽ<ヽミミ |: ン=-ニ-ヽ、 .|彡ミ三==- 漏れ以外に、Rubyist がいたのか?
彡ミ彡ミミヽ ) ` 、 .' <=ェェェェェン | |彡ン=-= 漏れを軽々と抜き去っていったか!
-==彡三ミi `ーヽ : : : : : :i: : `ー--一'' : : ノミ三==''
'' てノこミ彡三ミ`i : : : : : :ヽ: : : . .:, :/ミ三=-、
'' 三ミ=三三ミ|ヾ、: : : : :ヽ: : : : : : : : :_ノ:./三=-'
-=='' ̄ . : ̄ ̄ ̄ 彡 ` >>784
ふふふ、門前の小僧習わぬ経を読むで
ルビーさんのコードの見てるうちにルビーが少し書けるようになりました
JRubyとEclipse使って書いたんですけどコード補完が行われなくて
苦労しましたよ、おすすめの開発環境教えてください
ルビーは機能が豊富でプログラムは簡単に書けそうですが
言語はいろんな書き方ができて割合複雑ですね DELを二重化って・・お前が実装しろよ
ピラフの出題だからって舐めてんのか糞片山
ルビー爺が戦力になればお前なんか直ちにポイだお
⌒|/⌒ヽ、_ノ⌒ヽ、_ノ⌒ヽ、_ノ⌒
ヽ ____
/ |::⌒\
/ _ノ|::(●)\
裏 / o゚⌒ |ヽ__)⌒::::\ 表
|::. (__ノ|r-|:::::::::::::::::::|
\::. ´ |ー´::::::::::::::/
∧
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄\
ありがとうございます 置換前: s = Replace(s, DEL, DEL & DEL)
置換後: s = Replace(s, DEL & DEL, DEL) ごめん、DELを二重化ではなくて、
DELをDEL & "9"に置換するといいんだった。
置換前: s = Replace(s, DEL, DEL & "9")
置換後: s = Replace(s, DEL & "9", DEL) 技術力がある人なら、声を変えることもできるだろう。
匿名で動画配信やメッセージを送りたい人が使うとよい。 _. -─‐-
/ ⌒ \
/ ⌒ (● ) \ DEL&"9"?
/ ( ● ) 、_) ヽ ピラフ渾身の出題だったのにウンコこねくりまわしてんのか?
| (__ノ / | それ以前にネタに乗っかって来いお使えねぇな
ヽ  ̄ _ノ
>  ̄ \ もしかして。。。おれたち。。。
なんてやってるひまはねーよ。 お題: かけ算九九を発声するプログラム。
ヒント: ぜんぶひらがなにする。 コードとデータの分離。
データの再利用。
という話になる。ひらがなをプログラムに埋め込んでもいいが、テキストファイルを使った方が再利用性が高い。
九九にはおそらく著作権はない。「九九」をテキトーにウェブ検索して、参考にする。
九九のひらがなのテキストデータを構築してそのデータを読み込む仕組みを作ればいい。 訂正。
(誤) 九九にはおそらく著作権がない
(正) 九九のテキストにはおそらく著作権がない >>799
惜しいが、「3x3=9」は「さざんがく」になるんだな、これが。 >>800
常識にとらわれずに何回も聞いてたら慣れてくる
さざんになるのは20世紀まで、21世紀からは九九さえも
コンピューティングにノーマライズされるのがリテラシー ∩_
〈〈〈 ヽ
____ 〈⊃ }
/⌒ ⌒\ | |
/( ●) (●)\ ! !
/ :::::⌒(__人__)⌒:::::\| l
| |r┬-| | / <こいつ最高にアホ
\ ` ー'´ //
/ __ /
(___) / ピラフ掛け算九九よく知らないんだお
恥をかかせないよう先に言っておけよクソ片山
⌒|/⌒ヽ、_ノ⌒ヽ、_ノ⌒ヽ、_ノ⌒
ヽ ____
/ |::⌒\
/ _ノ|::(●)\
裏 / o゚⌒ |ヽ__)⌒::::\ 表
|::. (__ノ|r-|:::::::::::::::::::|
\::. ´ |ー´::::::::::::::/
∧
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄\
慣れろ、バカ >>800
もとい!やっぱ書き直すからちょっと待って 今対立したら本当に孤立してしまうお
今回はクソ片山を立ててやるか
⌒|/⌒ヽ、_ノ⌒ヽ、_ノ⌒ヽ、_ノ⌒
ヽ ____
/ |::⌒\
/ _ノ|::(●)\
裏 / o゚⌒ |ヽ__)⌒::::\ 表
|::. (__ノ|r-|:::::::::::::::::::|
\::. ´ |ー´::::::::::::::/
∧
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄\
ぎゃふん プログラマーを目指すなら、タイピングができないと、時間を無限に消費してしまうぜ。 タイピングにも方法論があって、ホームポジションとかブラインドタッチとか覚えておけば、早く入力できるぞ。
タイピングを練習するゲームソフトもGood! _|\∧∧∧MMMM∧∧∧/|_
> <
──┐ /─┐ ヽ / ヽ| |ヽ ム ヒ | |
| / / × | ̄| ̄ 月 ヒ | |
/ / / ヽ ./ | ノ \ ノ L_い o o
`――――――○――――――’
゚ | ・ | .+o ____* o。 |。| *。 |
゚ |i | + /_ノ ' ヽ_\ | |! |
o。! |! ゚o /(≡) (≡)\ | * ゚ |
。*゚ l ・/::::::⌒(__人__)⌒:::::\ |o ゚。・
*o゚ |! | |r┬-| | + *| 片山にぎゃふんと言わせたお
| ・ o \ `ー'U / *゚・ +||
|o |・゚ > | *。* |
* ゚ l| / | | +|
|l + ゚o / | *゚・ || ・ |o
o○ | | 丶 ヽ / | *o| *。
・| + ゚ o /| / っ | / | O *。|
O。 | ( ∪ /(;;_;;)\∪ ノ。* 。 |
o+ |!* \ / | ノ | *o|
|・ | ゚・ )ノ \ | o○ |! >>810
三栖井済友グループでは
メールを送るときに偉い順に
名前を羅列し、立場が同じ時は辞書順に
並べなければいけない
次の名簿の全員宛にメールを送るとき
どのような順番で名前を書けばよいか
調べるプログラムを書いてください
[名前],[上司]
徳川,日比谷
鹿島,地井
マイケル,日比谷
宮島,夢野
相田,佐藤
地井,高山
寺井,夢野
菊川,地井
横下,相田
日比谷,佐藤
村山,相田
夢野,高山 >>787
漏れはWindows10・Ruby で、VSCode を使っている。
ただし、Devkit・MSYS2 のコンパイル環境なしでやってるので、
Rubyの拡張機能は動かないし、デバッグ・入力補完もできない。
Visual Studio とか、コンパイル環境は数GB もあるから
あちこちに、p, pp, tap, puts, print などを入れて確認している
Visual Studio Code / VSCode Part4
https://mevius.5ch.net/test/read.cgi/tech/1529679715/454-467
おすすめ拡張機能は、上を参照。
特に、Code Runner, Bracket Pair Colorizer, Indent-Rainbow の3つは、Rubyでも使える
おすすめ本は、以下の順番で読んで。
逆引き本も、改訂されました
たのしいRuby 第5版、2016
Effective Ruby、2015
バグが起きにくい、安全で効率的なコーディングと、間違いやすいポイントを解説
改訂2版 Ruby逆引きハンドブック、2018/8/28 _|\∧∧∧MMMM∧∧∧/|_
> <
──┐ /─┐ ヽ / ヽ| |ヽ ム ヒ | |
| / / × | ̄| ̄ 月 ヒ | |
/ / / ヽ ./ | ノ \ ノ L_い o o
`――――――○――――――’
゚ | ・ | .+o ____* o。 |。| *。 |
゚ |i | + /_ノ ' ヽ_\ | |! |
o。! |! ゚o /(≡) (≡)\ | * ゚ |
。*゚ l ・/::::::⌒(__人__)⌒:::::\ |o ゚。・
*o゚ |! | |r┬-| | + *| 立場が同じ時は辞書順に並べなければいけない
| ・ o \ `ー'U / *゚・ +||
|o |・゚ > | *。* |
* ゚ l| / | | +|
|l + ゚o / | *゚・ || ・ |o
o○ | | 丶 ヽ / | *o| *。
・| + ゚ o /| / っ | / | O *。|
O。 | ( ∪ /(;;_;;)\∪ ノ。* 。 |
o+ |!* \ / | ノ | *o|
|・ | ゚・ )ノ \ | o○ |! ルビー爺の野郎、このタイミングで出てくるなお
間がわりーな
⌒|/⌒ヽ、_ノ⌒ヽ、_ノ⌒ヽ、_ノ⌒
ヽ ____
/ |::⌒\
/ _ノ|::(●)\
裏 / o゚⌒ |ヽ__)⌒::::\ 表
|::. (__ノ|r-|:::::::::::::::::::|
\::. ´ |ー´::::::::::::::/
∧
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄\
あざっす >>816
抜けてましたね、どうしよう
送らないってことでお願いします
名前欄にある人のみということで 片山のくせにピラフに意見するな
問題の不備ぐらいどうにかしておけだお
⌒|/⌒ヽ、_ノ⌒ヽ、_ノ⌒ヽ、_ノ⌒
ヽ ____
/ |::⌒\
/ _ノ|::(●)\
裏 / o゚⌒ |ヽ__)⌒::::\ 表
|::. (__ノ|r-|:::::::::::::::::::|
\::. ´ |ー´::::::::::::::/
∧
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄\
勝手に送るな、バカ このお題は、本質的には大学数学で学ぶ集合の順序関係、もしくはグラフ理論の話だよね。数学が不自由な方、置いてけぼり。 ____
/ \
/ ─ ─\
/ (●) (●) \ お題?何言ってんだこのバカ
| (__人__) |
/ ∩ノ ⊃ /
( \ / _ノ | |
.\ “ /__| |
\ /___ / >>820
本当はトロピカルなソートを使う問題を出したかったんだけど
無理だったから木構造でお茶を濁した、数学がわからなくても
木構造を知ってる人なら解けるかと 与えられたデータで上下関係が判定できない場合は、立場が同じと考えていいんだね? ____
/ _ ノ(_\;
;/ _ _.\;
;/ノ(( 。 )三( ゚ )∪\;
;.| ⌒ (__人__) ノ( |.;
..;\ u. . |++++| ⌒ /; トロピカル
.;ノ ⌒⌒ .\; @@
_,,..i'"':, @@@@ @ @ @
|\`、: i'、 @@@a@*@ @ @@ @
.\\`_',..-i |\@@@/| @ @@ @
.\|_,..-┘ |  ̄ ̄ | @@ @@@ @@
| ゴミ箱 | @@@@
| .. | @
\__/ @
/ ̄ ̄ ̄\
/ ─ ─ \
/ (●) (●) \ ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
| \ (__人__) / | ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
\_ | ` ⌒´ | _/ ::::::::::::::: :::::::::::::::
/ | :::::::::::::::本当はトロピカルなソートを使う問題を出したかったんだけど:::::::::::::::
(_)| ・ ・ || ::::::::::::::: ザーメン出したお :::::::::::::::
l⌒ヽΞ Ξ/| | ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
| |\_(;;U;;;)_ ̄)) ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
(_) //
( _) 明日も炭鉱へ行かないといけないから、そろそろ休むよ。 ∧∧
(・ω・)っ
(っ / どどどど…
Lノ┘
∧_∧
⊂(´・ω・)
ヽ ⊂ )
(⌒) | どどどど…
三`J
∧∧
(*・ω・) おやすみ
_| ⊃/(___
/ ヽ_(____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
<⌒/ヽー、__
/<_/____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ピラフに恥をかかせたまま逃げやがって
片山のくせにスカしてんじゃねーお
⌒|/⌒ヽ、_ノ⌒ヽ、_ノ⌒ヽ、_ノ⌒
ヽ ____
/ |::⌒\
/ _ノ|::(●)\
裏 / o゚⌒ |ヽ__)⌒::::\ 表
|::. (__ノ|r-|:::::::::::::::::::|
\::. ´ |ー´::::::::::::::/
∧
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄\
勝手に寝ろよバカ 炭鉱から戻った。
上下関係にループがあるなら、不正なので、エラーメッセージ。さもなければ、上下関係からヒープを作成し、名前フィールドの名前をヒープソート。でいいのかな?
順序集合の互いに素な、いくつかのグループがある場合、順序は一意に定まらないから、この場合もエラーか。
ということは、ヒープ木構造は複数考える必要があるのかな。ここまで来るなら、グラフ理論は必須だね。 >>779
Ruby で作った
# 改行を削除する
text = <<"EOT".delete( "\n" )
ナミは監禁されて非情な実験台にされている子どもたちを放って置けず
助けようとし、チョッパーは子どもたちが違法な薬物を投与されて
いることに気づきナミと共に子どもたちのもとに向かいます。
サンジはナミを襲おうとする敵を蹴散らし、フランキーはチョッパーが
止めるにもかかわらず大暴れするのでした
EOT
re = /サンジ|チョッパー|ナミ|フランキー/
text.gsub!( re ) do |matched| # 置換
case matched
when "サンジ" then "ナミ"
when "チョッパー" then "サンジ"
when "ナミ" then "フランキー"
else # フランキー
"チョッパー"
end
end
puts text :: .|ミ|
:: .|ミ|
:: .|ミ| ::::::::
::::: ____ |ミ| ::::
:: ,. -'"´ `¨ー 、 ::
:: / ,,.-'" ヽ ヽ、 ::
:: ,,.-'"_ r‐'" ,,.-'"` ヽ、 ::
:: / ヾ ( _,,.-='==-、ヽ ヽ、
:: i へ___ ヽゝ=-'"/ _,,> ヽ Rubyすごいです・・・
:: ./ / > ='''"  ̄ ̄ ̄ ヽ
:: / .<_ ノ''" ヽ i
:: / i 人_ ノ .l
:: ,' ' ,_,,ノエエエェェ了 /
i じエ='='='" ', / ::
', (___,,..----U / ::
ヽ、 __,,.. --------------i-'" ::
ヽ、_ __ -_'"--''"ニニニニニニニニヽ ::
`¨i三彡--''"´ ヽ ::
/ ヽ :: ┼ヽ -|r‐、. レ |
/ ヽ:: d⌒) ./| _ノ __ノ Dim s
s = "" _
& "ナミは監禁されて非情な実験台にされている子どもたちを放って置けず" _
& "助けようとし、チョッパーは子どもたちが違法な薬物を投与されて" _
& "いることに気づきナミと共に子どもたちのもとに向かいます。" _
& "サンジはナミを襲おうとする敵を蹴散らし、フランキーはチョッパーが" _
& "止めるにもかかわらず大暴れするのでした"
これは文章を変更するときに、地獄!
Ruby で書くと、ヒアドキュメントで「" " & _ 」などが無くなるから、変更の負担が少ない 触るのはマッチポンプしてるパイキチさんだけですしお寿司 O 「「「l
o \. V7
○`) | | r‐、
(⌒) o | | >、,> Rubyすごいです〜
____`o ○ | |. | |
// |O。゚-ト、. | | |
.//| /(・) ∩ |o. | | | /\ | |
|//| | | | | / | | ̄`l /\
|//| (・) \_| |─/ /く | / r、/`ーっ
|// \ | / / | \/\/ `ー'"
|/ ヽ__ // / | / ┼ヽ -|r‐、. レ |
mn____|___r──l__/ | / d⌒) ./| _ノ __ノ
ヽ_______|__ノ────' ──''" >>845
自分で便利と言い張っているに過ぎないのでスレ違い
お題スレもしくはscでやれ もしかすると、日本人の生産性が低いのはビジネスメールマナーのせいかも知れないね。 ピラフと乳繰ってるだけだろ
やっぱりお題スレでやられても迷惑だろうからscでやれ >>849
>ビジネスメールマナー
業務でメールを使っていますが、これといったマナーを思いつきません
ビジネスメールマナーってなんですか? 片山って、仕事でコードを書いたことねーのかなぁ…。
コード貼れるサイト教えたら貼ってやるわ。 適当に見つけて置いた。
https://ideone.com/VGfEYW
片山、てめーはマジで下手くそ&センスゼロ。
クソコードを見てカチンと来た俺がアホだった。
トーナメントの規則をあれこれ調べて(これが意外と正確な資料が出なかった)アルゴリズムを考えるのに2時間。全部書くのに1時間。
グジャグジャ書くような代物でもなんでもなかった。
皆でNG入れとくべし。 お前の貼ったコード、改めて見たら引数で参加数も表示方向も変えられねーじゃん。
馬鹿だろ。
ムカつくのでもう一回言っとく。
片山、てめーはクソみたいに下手くそ。 >>845
ありがとうございます!超便利!
メール面倒ですよね、名前の順番だけじゃなくて
何々様
お疲れ様です、拝承。
ところで拝承、〜〜の件について〜〜をお願いしたく。
以上、よろしく拝承。
とかやってますもんね >>856
お前のせいで片山が散々なのにバカじゃねーの どっちかというと、メーラーにつけるべき機能に思える。 >>858
拝承アドイン作って買い取ってもらうか
でも合理主義の日立株式会社ゼネコン様なら
とっくに作ってそうだけどね
拝承と合理的に短縮しておきながらそれを
書かなきゃいけないなんてそれじゃあ日立さんアレじゃないですか >>859
君もコテハン付けたらいんじゃない?
拝承ってコテハンはどうだろ?
アリさんと私と君の3バカトリオ、一生友だちだよね 私もさーピラフの名前を譲っちゃったから新しい名前を名乗ろうかと
思ってるんだけど良いの思いつかなくて >>860-863
また連投かよw
ルビージジイを含めた3人でscに行って乳繰り合ってろ
バーーカ >>858
お題
文字列を指定した回数繰り返すメソッドを作ってください
繰り返す回数が多くても高速に動作するようにしてください
しかも再帰を使ってください >>865
スレ違い
誰にも邪魔されたくないんだろ?
scでやってろキチガイ
http://toro.2ch. sc/tech/ >>858
おい、お前なんかよりずっとシンプルかつオプション付きの模範解答に対して何か言えよ。
ド下手くそ。 要件満たしてないものは模範にはならないっしょ
引数とかそういういらないから出力例の通りにやってよ
ユーザの受け入れテスト通らないよ >>868
スレ違いのくせに他人様に意見してるんじゃねえよ 仕様満たしたうえで機能を追加しました
処理を高速化しました、コードをきれいにしましたって
いうのならわかるんだけど、仕様満たさずにそれを
やるのは本末転倒でしょ、優先度を間違えてると思うの
だって正しく動かないんだもの 自分なりのトーナメント表作ったぜというのならわかるんだけど
それならそれで私のアリさんの悪口言うのはやめて欲しい >>868
馬鹿だろお前。てか馬鹿。
> 731 デフォルトの名無しさん ▼ 2018/09/18(火) 16:50:37.02 ID:/fJcssx/ [7回目]
> 準備できました、それでは問題を出します
> 一次元の配列を元に罫線素片を使用してトーナメント表を出力してください
>
> Array("A","B","C","D","E","F","G","H","I","J")
> ↑の配列を元に↓の出力を得る
> https://light.dotup.org/uploda/light.dotup.org548029.png
俺は >>749 で明快に要件を満たすコードを出してるんだが?
はい反論どうぞwwww >>873
出題者としてはそういうのは期待してない
君がやってるのは詭弁じゃん >>871
自分が元凶のくせにまるで他人事のような言い方だな
一回死ね >>873
じゃあ何を期待してんのwwww
仕様があやふやなのにそれを不問にしてコードが書けるかボケナス!!
ド素人だろ、てめー。
まぁ、片山=ピラフは同一人物なので、仕様を勝手に解釈して作ったようだが、見逃せないほど下手だったので俺は文句つけた。
それでもウンコだったので頭に来て、俺は標準的なアルゴリズムを参考にしてシンプルさと拡張性を重んじて作ってみた。
もちっと改良の余地あるけどね。
た だ そ れ だ け
お前のお題に答えた気は一切無いね。つけあがるんじゃねぇよ。てめー何様だ? >>877
再帰を使った問題だと言ってるんだから
ハードコーディングはありえないっしょ
仕様は示したでしょ
この配列からこの出力が得られるようにって
画像で明確に示しましたよ
アリさんはそれを読解して仕様を満たす
コードを提示されました
君はハードコーディングで誤魔化して
マジメに実装したものは仕様を満たしてませんでした
できなかった言い訳は一生懸命 //nologo が抜けてるとか変数名がとか
他人には厳しいのに自分は仕様を満たしてないことを言い訳ならべたてて
正当化してるじゃないっすか、それってダサいですよ
シンプルさも拡張性も大事だけど、それは正しく動いた上でのことだよ
いま君はすごくダサい スレ違いの上に錯乱して連投してるピラフの完敗ということで。 https://ideone.com/VGfEYW
コメントがダサいよね
作るまでもないとか
コメントに書くことじゃないよ
oArgsとかGoDownとかクソダサいし
ひっくり返して表示とかダサすぎるよ
IsVerticalをあっちこっちで判定してるのもダサいし
抽象化が不十分な汚いコードだよ
もうほんとダサい >>880
はいはい片山ピラフ乙。
何度も言うけど、俺はお題はどうでもいい。
シードの割り振りが不明瞭で時点で出題者をそもそも相手にしてない。
ハードコーディングは紛れもなくアホな出題者に対する嫌味。
さて、俺はネットで調べた標準的なシード割り振りに従って作ってみた。
偉そうなくせにコードが下手くそなオッサン(=片山ピラフ)の「コードの」下手さに苦言を呈するためにね。。
で、表示上の話をグダグダ言いたいならさぁ…。
俺のコードは処理と表示を割と切り離し気味にしているから、ほんの少しいじるだけであれこれできるんだけどね。
仮想画面だのなんだのって面倒な仕組みなんかないんで。
あー、読めませんか?こんなシンプルなコードが? >>883
シードの割り振りが不明瞭っていうのはほんとなの?
単純に二分割してるだけだよ、規則性がわからなかったの?
嫌味だってのはわかってるよ、反論どうぞとまで言ってたよね
幼稚だねで終わったけど 根幹はきっちり作って後でどうとでも変わるようなところは力を抜いて作るって知らないのかこいつ…。
シードの割り振りは右「だよね?」という程度の画像で空気読めとかっていう馬鹿だし。
アホらしい。 お前の出題なんだから不備があってもおかしくないだろ >>885
>力を抜いて作るって知らないのか
おめーほんとダセーなw はっきり言うけどコードはまったくわからない
解説をお願いしたいマジで いろいろあったけどノーサイドってことで
仲良くやっていきたいし解説して欲しい まだ気が済まないのかよ
こんなん絶対健常者じゃないだろ >>892
お前からも解説をお願いして欲しい
力を貸してくれたまには >>893
あの・・・この度は、解説をお願いできますでしょうか? ハードコーディングであしらうくらいで丁度いいんだよな :: .|ミ|
:: .|ミ|
:: .|ミ| ::::::::
::::: ____ |ミ| ::::
:: ,. -'"´ `¨ー 、 ::
:: / ,,.-'" ヽ ヽ、 ::
:: ,,.-'"_ r‐'" ,,.-'"` ヽ、 ::
:: / ヾ ( _,,.-='==-、ヽ ヽ、
:: i へ___ ヽゝ=-'"/ _,,> ヽ 解説、お願いできますか・・・
:: ./ / > ='''"  ̄ ̄ ̄ ヽ
:: / .<_ ノ''" ヽ i
:: / i 人_ ノ .l
:: ,' ' ,_,,ノエエエェェ了 /
i じエ='='='" ', / ::
', (___,,..----U / ::
ヽ、 __,,.. --------------i-'" ::
ヽ、_ __ -_'"--''"ニニニニニニニニヽ ::
`¨i三彡--''"´ ヽ ::
/ ヽ :: ┼ヽ -|r‐、. レ |
/ ヽ:: d⌒) ./| _ノ __ノ あっそ
しつこく食い下がって相手を呆れさせるのがお前のいつもの手口だもんな >>900
でも今回ばかりは助けて欲しい
読めばわかるだろうと思ったんだけど全然わからない
私がお願いしてもダメかもしれないから
君からお願いしてみて欲しい
僕が何をしたら解説してくれるんですかって君からお願いして欲しい >>901
普段から他人を舐め腐った態度だからまるで誠意が見られない
冗談抜きで控えた方がいい 再帰を問題に出すくらいだから解説なくても分かるでしょ? ByRef まみれの片山ゲロコードとは違い、ByVal オンリーの分かりやすいコードだし。
こんなに分かりやすいのに何が分からないのさ?
…と聞いておこう。 >>907
ダサくて何が悪いんだ
地べた這いつくばっても泥水すすっても生きてくんだバカ野郎が >>908
それがわからないんです
百獣の王者ライオンも生まれたてのときは子猫と変わらないです
私をライオンの赤ちゃんだと思って教えて欲しいです
イメージができないんですよね
どういうふうに木が作られていくのか
図があると助かります :/ _,. - 、\: _:
:/ / M ヽ_,. -‐''¨ ̄ ¨\:
:/ | _, -'´ _,. -―― |:
:/ >‐´ _,-'´ _ ノ:
:| / ∠ -‐''''彡≡ヽ /:
:| / r≡ミヽ リィ,.-−、'´:
:| / |リ ̄~'' 'ィt或アチl__:
:| / / リ, -−-_,, ` ‐''"´¨ \:
:| /__/ 、,ィ或tュ、 / |__:
:ノ | `ヽ 二ノ |;;;;|:
:/ |- ,,__ __ /;;r'!:
:! __ |:::::::::::::| |;;ヽ__lヽ、_ _,,/;;;;;|:
:Y´ `'‐ ,:::::::::) └-i;;;;;;;;;;;;;;;;;;;:`¨'''¨´;;;;;;/ ̄|: 図があると助かります
:| -‐-、  ̄ ヽ____/ ̄''''´ /:
:|  ̄) トェェェェェェイ /:
:\ | `'''''''/ /:
:\___,-、_ ヾ'zェェッ' /:
:`''――'''''-、_∪ /:
:`''――'''
/  ̄ ¨丶ヾ`ーs一'´__ ¨ ´ ̄`ヽ、
/ ` 〃 '´ ヽ
,′ / l! ;
| j |D|! !
! / |S|!. 、/ |
l ! :2:. └ ' .:c:: ! |
l//" " } ! 元々、この板では、片山先生・ピラフ・QZ は、有名なコテハン。
片山先生は、同姓同名の人がたくさんいるから、コテハンを変えた
ソースコードを読めば、別人だとわかるだろ。
個々人で、全然違うのだから >>911
> 私をライオンの赤ちゃんだと思って教えて欲しいです
ライオンは子を先人の谷に落とすという。
這い上がれねば死ね。 >>914
,,、,,ト、 ,,ィ ,ィ
,r'__" ゛" ゛" "''イ、
,r'( rノ,;゛゛゛゛''''""ヽ ミ
,r'' i _ ー|゛';, あー昔はそうやってたけどねー
r, イ ( ・ヽ 〈・フ| "';, でもそれだと実際育たないから
,i゛ イ ▼ | ゛';,
/ リ ヽ __人__/ ミ
/ ´リ ヽ ⌒⌒i ミ´
/ ´リ、 ´""'''゙´ ミ´\
/ / "ル, ゾ \
/ / 'リザゾル' ト、 \
― |  ̄ ̄ ̄ ̄ ̄ `ヽ―┴―――――――
`ー――― --- 、__))) ,;:'':, ,,:'':,
,:':::: ':,,.,.,.,.,.,.,.,,:':: ':,,
,:´:: ':,
♪ ;':::: ':,
;:::: ';
';:::: ● ● ;' 教えてほしいんよ
';二二 (__人__) 二二;'
'':、::::.. ,.,::'
`;'' 、,.,.,.,.,., ''::,, ♪
(( ;:: ゙'; '':,,
'::;: 、,.,.,.,.,.,.,::'',:' , '::,,
':;;:: ,,-'' ,,:' '':,
♪ ':;:: ';:: ,,::'' ;' ))
,,:'':: "'''''''" ,:'
,,:'':: ,:;:;:'' ;'
;':::: ,,::'" ';:::: ';
'::;;:;:;:;:;::'' ':;:;:;:;:;:;::'' :: .|ミ|
:: .|ミ|
:: .|ミ| ::::::::
::::: ____ |ミ| ::::
:: ,. -'"´ `¨ー 、 ::
:: / ,,.-'" ヽ ヽ、 ::
:: ,,.-'"_ r‐'" ,,.-'"` ヽ、 ::
:: / ヾ ( _,,.-='==-、ヽ ヽ、
:: i へ___ ヽゝ=-'"/ _,,> ヽ 泥水すすっても生きてくんだ・・・
:: ./ / > ='''"  ̄ ̄ ̄ ヽ
:: / .<_ ノ''" ヽ i
:: / i 人_ ノ .l
:: ,' ' ,_,,ノエエエェェ了 /
i じエ='='='" ', / ::
', (___,,..----U / ::
ヽ、 __,,.. --------------i-'" ::
ヽ、_ __ -_'"--''"ニニニニニニニニヽ ::
`¨i三彡--''"´ ヽ ::
/ ヽ :: ┼ヽ -|r‐、. レ |
/ ヽ:: d⌒) ./| _ノ __ノ >>917
AA貼って荒らす暇あるなら読み解く努力しなよ | | ____ \
| _ / \ __\
|/ <_ ─ ─\__> `ヽ
| ヽ__[ )●) (●(コ__/ | AA貼って荒らす暇あるなら・・
| ヽ___[ ) (__人__)(コ___/ |
ヽ ヽ__[ ) ` ⌒´ (コ__/ /
`ー―' ./`ー―'
.  ̄ ̄l l ̄ ̄ ̄
丿 !
____
/ \ _ / 三 ニ =―
/)─ ―___> `ヽ/ 三 ニ =―
(])(●) ( (コ__〉__> ヽ /三 ニ =―
(]) (__人__)(コ__〉__> 〉/ ニ =―
(]) ` ⌒´ (コ__〉__> ,.' 三 ニ =―
\ `――'―'" 三 ニ =―
 ̄>ニ/ ̄ ̄ ゴキッ! ┼ヽ -|r‐、. レ |
丿 ! `☆ d⌒) ./| _ノ __ノ ____
/ \ /\ キリッ
. / (ー) (ー)\
/ ⌒(__人__)⌒ \
| |r┬-| | おもしろい
\ `ー'´ /
ノ \
/´ ヽ 片山ぁ?実名で出てこいや?
悪いけど、俺は
「VBScript縛り」で
「Projecto Euler」に参加した
「日本初」の人なんだけど?
…とか言ってみようか。
胸糞悪いが。
ていうか何を教えて欲しいのかイラつくんだけど?
他の言語にいくらでも移植できるものについて「教えて」と言われても「死ね」としか答えようがないし…
回答は「死ね」である。 ヽ:: / o
O )/
__,ハ__゚
/ Y \
/ _ノ ヽ、_ \
/ o((゚●)) ((●))゚o\
| (__人__) | すごーい
\ ` ⌒´ /
`=============’
i |
| |
| ノ ( :|
| ⌒ |
| |
| | 小学校4年の問題(算数だけで解くこと)
3つの正方形を並べて図のような形を作りました。
この図の面積は何平方cmですか。
http://image.itmedia.co.jp/nl/articles/1408/28/ah_san1.jpg ____
/ _ ノ(_\;
;/ _ _.\;
;/ノ(( 。 )三( ゚ )∪\;
;.| ⌒ (__人__) ノ( |.;
..;\ u. . |++++| ⌒ /; 算数だけで解くこと
.;ノ ⌒⌒ .\; \ U /
\ ____ /
/⌒ ⌒\
/( ●) (●)\ / _/\/\/\/|___
\ ノ///::::::⌒(__人__)⌒:::::\ミヽ / \ /
\ / く | |r┬-| |ゝ \ < 小学校4年の問題 >
/ /⌒ \ `ー'´ / ⌒\ \ / \
(  ̄ ̄⌒ ⌒ ̄ _)  ̄|/\/\/\/\/ ̄
` ̄ ̄`ヽ /´ ̄
| |
−−− ‐ ノ |
/ ノ
/ ∠_
−− | f\ ノ  ̄`丶.
| | ヽ___ノー─-- 、_ ) − _
. | | / /
| | ,' /
/ / ノ | ,' \
/ / | / \
/ _ノ / ,ノ 〈 \
( 〈 ヽ.__ \ \
ヽ._> \__) ____
/ \
/ rデミ \ 算数だけで解くことこの図の面積は何平方cmですか補助線を引くだけ241
/ `ー′ /でン \
| 、 .ゝ |
\ ヾニァ' /
ノ \
/´ ヽ
| l >>682
>配列が重要なデータ構造?
>馬鹿じゃないのか?
>
>配列はどうしようもなく仕方なく使うという以外に使ってはいけない過去のもの。
配列はすごくこれから人間を救っていく
スタックを使いたいときSystem.Collections.StackをCreateObjectする方法が
あるけれども、配列を使ってスタックを実装するとそれの200倍早く処理できる
お試しください
https://gist.github.com/sleeping-marple/260bda15855e93af3fcea0266b61d3fe ____
/ u \
/ \ /\ 配列はすごくこれから人間を救っていく・・・・・・・・・
/ し (>) (<)\
| ∪ (__人__) J |
\ u `⌒´ /
ノ \
/´ ヽ
| l
____
/ \
/ rデミ \ お試しください
/ `ー′ /でン \
| 、 .ゝ |
\ ヾニァ' /
ノ \
/´ ヽ
| l ____
/⌒ ⌒\ ホジホジ
/( ●) (●)\
/::::::⌒(__人__)⌒::::: \ <参考までに10進数を2進数に変換するのはこう書けます
| mj |ー'´ |
\ 〈__ノ /
ノ ノ 今全人類に本当に必要とされてるのはピラフのパンツやろが ______
______________∧______ ∧_______________| ̄|‖α‖|
回■回■回■回■回■回■回 《α〕大小耳飯店〔α》 回■回■回■回■回■回■回■| ̄|  ̄ ̄ |
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|  ̄ ̄ ̄
. ┌───┐  ̄ ̄ ̄ ̄ ̄ ̄ .|
┏━┳━━┓ │は ピ│ .| ̄ ̄ ̄| ̄ ̄ ̄| ┏┳━━━┓┏━━━┳┓ |
┃┏┻┓ ┃ │じ ラ │ .| | | ┃┣━┓┏┫┃ ┏━┫┃ |
┃┃α┃┏┫ │め フ │ .| | | ┃┃ ┣┛┃┣━┫α┃┃ |
┃┣━┻┻┫ │ま が.│ .|回回回|回回回|. .┃┗┳┻━┫┃ ┗━╋┫ |
┗┻━━━┛ │し 発│ .| []|[] | ┗━┻━━┛┗━━━┻┛ |
│た 狂.│ .|回回回|回回回| |
└───' .| | | |
| | | _|
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ______
/ u/,三.\\
/ u ノ( ( 。 )三( ゚ )\ <どう? 率直にどう?
| ⌒ (__人__) | ________
\ |++++| / | | |
ノ ⌒⌒ \| | |
/´ .| | |
| l カタカタ u ..| | |
ヽ u -一ー_;、⌒)^),-、 ...| |________|
ヽ ____,ノγ⌒ヽ)ニニ-___| | |____ _(・)>] いしや〜きいも〜 〜♪
[焼き芋]□ おいも〜 〜♪
/ ̄ ̄ /7|~~~~~~~~~’|
/∧,,∧ //:||△┓ζζ|
「/(・ω・`/卩||..[]┃┳┳|
|L ̄ ̄」| ̄ ̄|三三三三]
[O≡O]||..r-、_|____r-、l
~ヽニノ ̄ヽニノ ̄ヽニノヽニノ。。。 >>934-940
______
______________∧______ ∧_______________| ̄|‖α‖|
回■回■回■回■回■回■回 《α〕大小耳飯店〔α》 回■回■回■回■回■回■回■| ̄|  ̄ ̄ |
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|  ̄ ̄ ̄
. ┌───┐  ̄ ̄ ̄ ̄ ̄ ̄ .|
┏━┳━━┓ │は ピ│ .| ̄ ̄ ̄| ̄ ̄ ̄| ┏┳━━━┓┏━━━┳┓ |
┃┏┻┓ ┃ │じ ラ │ .| | | ┃┣━┓┏┫┃ ┏━┫┃ |
┃┃α┃┏┫ │め フ │ .| | | ┃┃ ┣┛┃┣━┫α┃┃ |
┃┣━┻┻┫ │ま が.│ .|回回回|回回回|. .┃┗┳┻━┫┃ ┗━╋┫ |
┗┻━━━┛ │し 自│ .| []|[] | ┗━┻━━┛┗━━━┻┛ |
│た 演.│ .|回回回|回回回| |
└───' .| | | |
| | | _|
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ :: .|ミ|
:: .|ミ|
:: .|ミ| ::::::::
::::: ____ |ミ| ::::
:: ,. -'"´ `¨ー 、 ::
:: / ,,.-'" ヽ ヽ、 ::
:: ,,.-'"_ r‐'" ,,.-'"` ヽ、 ::
:: / ヾ ( _,,.-='==-、ヽ ヽ、
:: i へ___ ヽゝ=-'"/ _,,> ヽ https://gist.github.com/・・・
:: ./ / > ='''"  ̄ ̄ ̄ ヽ
:: / .<_ ノ''" ヽ i
:: / i 人_ ノ .l
:: ,' ' ,_,,ノエエエェェ了 /
i じエ='='='" ', / ::
', (___,,..----U / ::
ヽ、 __,,.. --------------i-'" ::
ヽ、_ __ -_'"--''"ニニニニニニニニヽ ::
`¨i三彡--''"´ ヽ ::
/ ヽ :: ┼ヽ -|r‐、. レ |
/ ヽ:: d⌒) ./| _ノ __ノ ____
/⌒ ⌒\ ホジホジ
/( ●) (●)\
/::::::⌒(__人__)⌒::::: \ <ピラフの活躍は1スレでは収まらないお
| mj |ー'´ |
\ 〈__ノ /
ノ ノ >>949
まだ早すぎるだろ。次スレは>>990あたりが建てるほうがいい。
テンプレは以下のような感じでどうだ?
↓
スレタイ「VBSで便利なプログラムを作れスレ 2」
素人丸出しお粗末で遅くてもいいので
いますぐ使えるちょっぴり便利プログラムを作れ
(例○○を自動処理してくれるプログラム)
前スレ
VBSで便利なプログラムを作れスレ
https://mevius.5ch.net/test/read.cgi/tech/1170492587/ ____
/⌒ ⌒\ ホジホジ
/( ●) (●)\
/::::::⌒(__人__)⌒::::: \ ピラフが立てた超優良スレがあるお
| mj |ー'´ | Windows Script Host
\ 〈__ノ / https://mevius.5ch.net/test/read.cgi/tech/1536155434/
ノ ノ ____
/⌒ ⌒\ ホジホジ
/( ●) (●)\ >>950
/::::::⌒(__人__)⌒::::: \ おい片山、さっさとピラフが立てたスレに来いよ
| mj |ー'´ | Windows Script Host
\ 〈__ノ / https://mevius.5ch.net/test/read.cgi/tech/1536155434/
ノ ノ :: .|ミ|
:: .|ミ|
:: .|ミ| ::::::::
::::: ____ |ミ| ::::
:: ,. -'"´ `¨ー 、 ::
:: / ,,.-'" ヽ ヽ、 ::
:: ,,.-'"_ r‐'" ,,.-'"` ヽ、 ::
:: / ヾ ( _,,.-='==-、ヽ ヽ、
:: i へ___ ヽゝ=-'"/ _,,> ヽ おいピラフ・・次スレ建てろよ・・・
:: ./ / > ='''"  ̄ ̄ ̄ ヽ
:: / .<_ ノ''" ヽ i
:: / i 人_ ノ .l
:: ,' ' ,_,,ノエエエェェ了 /
i じエ='='='" ', / ::
', (___,,..----U / ::
ヽ、 __,,.. --------------i-'" ::
ヽ、_ __ -_'"--''"ニニニニニニニニヽ ::
`¨i三彡--''"´ ヽ ::
/ ヽ :: ┼ヽ -|r‐、. レ |
/ ヽ:: d⌒) ./| _ノ __ノ 私もピラフ嫌い、AA貼って荒らすことしかできない無能に成り下がったよね >>953
それならそっちを実質上の次スレにするという事でいいんじゃないか? ___
/ \
/ ─ ─ \
/ (●) (●) \
| (__人__) | こいよオラ!!オラ!!
,.゙-‐- 、 `⌒´ ,/ https://gist.github.com/kingpilaf/
┌、. / ヽ ー‐ <.
ヽ.X、- 、 ,ノi ハ
⊂>'">┐ヽノ〃 / ヘ
入 ´// ノ } ,..,.._',.-ァ
/ `ー''"´ ,' c〈〈〈っ<
/ __,,..ノ ,ノヽー'"ノ
{ ´ / ``¨´
/´¨`'''‐、._ ,'\
∨´ `ヽ、 ノ ゙ヽ
∨ ヽ _,,..-'" `ヽ
∨ 〈-=、.__ }
ヽ、 } ``7‐-. /
ヽ リ /′ ノ
/′ , { / /
{ ! ,ノ ,/′
! / / `‐-、
! ,/ ゙ー''' ー---'
', /
{ }
゙Y `ヽ、
゙ー--‐' ____
/⌒ ⌒\
___ /( ●) (●)\ ___
/⌒ ⌒\/::::::⌒(__人__)⌒:::::ヽ/⌒ ⌒\
/( ●) (●)\ |r┬-| /( ●) (●)\
/:::::::⌒(__人__)⌒:::: \ `ー'´ /:::::::⌒(__人__)⌒:::: \
| |r┬-| | ̄ ̄ ̄ ̄ | |r┬-| |
___ `ー'´ / \ `ー'´ ____
/⌒ ⌒\  ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄/⌒ ⌒\
/( ●) (●)\ _|_ヽ | /( ●) (●)\
/::::::⌒(__人__)⌒::::: \ _」 _ | /::::::⌒(__人__)⌒::::: \
| |r┬-| | (_厂 ) _) o | |r┬-| |
\ `ー'´ https://gist.github.com/sleeping-marple/__ `ー'´ /
 ̄ ̄ ̄ ̄ ̄/⌒ ⌒\ /⌒ ⌒\ ̄ ̄ ̄
/( ●) (●)\ /( ●) (●)\
/::::::⌒(__人__)⌒::::: \ ____ /:::::⌒(__人__)⌒::::: \
| |r┬-| | /⌒ ⌒\ |r┬-| |
\ `ー'´ /( ●) (●) \ `ー'´ /
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ /::::::⌒(__人__)⌒::::: \  ̄ ̄ ̄ ̄ ̄
| |r┬-| |
\ `ー'´ / こいつはピラフじゃなくて、「眠れるマープルおばさん」って呼ぼうか? マープルおばさん、首吊りAAはやめてね。かわいくないから。 :: .|ミ|
:: .|ミ|
:: .|ミ| ::::::::
::::: ____ |ミ| ::::
:: ,. -'"´ `¨ー 、 ::
:: / ,,.-'" ヽ ヽ、 ::
:: ,,.-'"_ r‐'" ,,.-'"` ヽ、 ::
:: / ヾ ( _,,.-='==-、ヽ ヽ、
:: i へ___ ヽゝ=-'"/ _,,> ヽ .NETのStackのPopがすごく時間かかる・・・
:: ./ / > ='''"  ̄ ̄ ̄ ヽ
:: / .<_ ノ''" ヽ i
:: / i 人_ ノ .l
:: ,' ' ,_,,ノエエエェェ了 /
i じエ='='='" ', / ::
', (___,,..----U / ::
ヽ、 __,,.. --------------i-'" ::
ヽ、_ __ -_'"--''"ニニニニニニニニヽ ::
`¨i三彡--''"´ ヽ ::
/ ヽ :: ┼ヽ -|r‐、. レ |
/ ヽ:: d⌒) ./| _ノ __ノ >>962
あたしゃ首吊りAAなんて貼ってないよ、冗談じゃないよ
なんか良い問題ないかね? 不変オブジェクトの線形リストをソートするってのはどうだろ? >>965
私もピラフ嫌い、AA貼って荒らすことしかできない無能に成り下がったよね
↑
これコテを外す前のお前の事だよな 登場人物を確認しておこう。
俺が蟻人間で、
ID:KYi5h4Anがマープルおばさんで、
ID:SRT2sDHvがピラフになりすますAA荒らし。
本物のピラフは生死不明。 >>969
もしかしてピラフ本人だと思ってたのか?
なりすましてたわけじゃなく、コイツの悪態を晒してただけなんだけど
やっぱりピラフはキチガイと認識されてたかwwww :: .|ミ|
:: .|ミ|
:: .|ミ| ::::::::
::::: ____ |ミ| ::::
:: ,. -'"´ `¨ー 、 ::
:: / ,,.-'" ヽ ヽ、 ::
:: ,,.-'"_ r‐'" ,,.-'"` ヽ、 ::
:: / ヾ ( _,,.-='==-、ヽ ヽ、
:: i へ___ ヽゝ=-'"/ _,,> ヽ あたしゃ首吊りAAなんて貼ってないよ・・・
:: ./ / > ='''"  ̄ ̄ ̄ ヽ
:: / .<_ ノ''" ヽ i
:: / i 人_ ノ .l
:: ,' ' ,_,,ノエエエェェ了 /
i じエ='='='" ', / ::
', (___,,..----U / ::
ヽ、 __,,.. --------------i-'" ::
ヽ、_ __ -_'"--''"ニニニニニニニニヽ ::
`¨i三彡--''"´ ヽ ::
/ ヽ :: ┼ヽ -|r‐、. レ |
/ ヽ:: d⌒) ./| _ノ __ノ タブ区切りテキストをCSVに変換するプログラムを作ろう。 _,, ---一 ー- ,,,_
、 _,,,, _,, -.'" ` 、
ミ三ミ三ミ三ミミ ヽ_,
-==三ミ彡三ミミ ,,=-== ==、 iミ=-、_
_,,ンミミ三ミ三ミミ] -彡-一 ー-、 r一 ーミ、|ミミ三ミ=-'
_, -==彡ミ彡ミミミ| ン| ,=て)> (|ー| ,て)>、 ||三ミ彡==-'
,彡彡三ミ三ミミiレ'~ .|. ' | ヽ ` |ミ三彡三=-
(_彡三ミ彡ミミミ' ヽ、 ノ \__ノiミ彡ミ三=ー
ー-=二三ンーミミミ `ー /(_r-、r-_) .|彡ミ三=-、
)(_ミ彡ミ| i' ヽヽミ | : : : __ : :__: :i .|彡ミ三=-、
と彡ミ彡ミヽヽ<ヽミミ |: ン=-ニ-ヽ、 .|彡ミ三==-タブ区切りテキストをCSVに変換するプログラムを作ろう。
彡ミ彡ミミヽ ) ` 、 .' <=ェェェェェン | |彡ン=-=
-==彡三ミi `ーヽ : : : : : :i: : `ー--一'' : : ノミ三==''
'' てノこミ彡三ミ`i : : : : : :ヽ: : : . .:, :/ミ三=-、
'' 三ミ=三三ミ|ヾ、: : : : :ヽ: : : : : : : : :_ノ:./三=-'
-=='' ̄ . : ̄ ̄ ̄ 彡 ` | | | |
_||_||__|| ||
(__/ `ー――
(___/ r
(_レノ)\ ___
(__/__/
____
/⌒ ⌒\
/( ●) (●)\
/::::::⌒(__人__)⌒::::: \
| |r┬-| |
\ `ー'´ /
//ノ ̄ ̄`ヽ、// // ////
/ ´`ヽ _ // // //
(--/ ̄ , ` ̄ ̄ ̄///
( ...| /!
(`ー‐し'ゝL _
/(--‐‐'´} ;ー------
:● ))`ヾ:::-‐'ーr‐'" ((● いいっすね
\ `ー' |r┬-| `ー' /
`ー'┃ 荒らしのメンバーは、存在理由がないから早く消えてね。 / ̄ ̄\ タブ区切りテキストをCSVに変換するプログラムを作ろう。
アッ… /‐' ヽ_ \
( ー)( ー) | ____
(__人__)/// | / \
γ⌒ヽノ l` ⌒´ | / ─'' `ー \ んッ… いいっすね
( ⌒ ) { |/ (ー) ( ー) \ γY⌒ヽ
ゝ_ イ { / | ///(__人__)/// | ー ( ノ )
ヽ ノ、 \ ` ⌒´ ,/ ゝ、_ノ
/ ̄/ ` ー ─ '/>< ` ー─ ' ―-、
/  ̄ / ヽ
| 、. r‐x‐、,' ,.‐x‐、 . / /
\. \ ! (__) ヽ、. / (__) 〉_,./ /
\ ミ、_,.  ̄ ̄ ̄ /
`ー-------‐`ー―------―一' こいつはピラフじゃなくて、メープルおばさん。役に立つプログラムを作ろうとしてるんだから、スレ違いではない。
荒らしが消えても名無しは葬式に行かないもん。 荒らしは知らないかも知れないけど、ソフトをインストールしちゃダメっつー、特殊な環境が
あって、そこでWSHがよく使われているらしいぜ。 VBSが役に立つ、役に立たないを判断するのは利用者であって、お前ではない。
勝手な思い込みでスレを攻撃してはならない。 VBSに限らず好き勝手やってるピラフに餌やってるんだからお前も荒らし
便利だと言い張って居座ろうとしているだけ
そうでないならこっちでやらない理由はないよな
Windows Script Host
https://mevius.5ch.net/test/read.cgi/tech/1536155434/ コードの下手くそさ加減から言って
片山=ピラフ
乙。
次スレいらん。 認められないんだろうな
プライドだけは高いから自分と向き合えない ドッジボールやって自分から球に当たりに行くようなもんだよ ゲームをぶち壊しにしてしまえば運動音痴なことを隠せると思ってるんだろ このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 4263日 5時間 12分 59秒 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php レス数が1000を超えています。これ以上書き込みはできません。