queuerev2 の回答履歴

全248件中61~80件表示
  • C言語 ハノイの塔

    #include<stdio.h> void hanoi(int n,char a,char b,char c); int main(void) { int n=3; printf("円板の枚数 ⇒ " ); hanoi(n,'a','b','c'); return 0; } void hanoi(int n,char a,char b,char c) { if(n > 0){ hanoi(n - 1,a,c,b); printf("%d番の板を %c から %c に移動\n",n,a,b); hanoi(n - 1,c,b,a); } } このときの再帰の処理がわかりません。。 再帰の間にprintfがあるのでどこがつながっているのか順番がわかりません。 具体的な数値の手順を教えてください。

  • VBSのSendKeysでクリックができない

    音声認識アプリケーションからvbsを実行できるのですが、ここで一度だけマウスクリックしたい状況が出てきて困っています。 Dim WSHShell As Object Set WSHShell = CreateObject("Wscript.Shell") WSHShell.AppActivate "操作したいアプリケーション名" WSHShell.SendKeys "{TAB}" 'OK WSHShell.SendKeys "{ENTER}" 'OK WSHShell.SendKeys "{CLICK LEFT, 10, 10}" 'NG TABキーやENTERキーは動作するのですが、3番目のマウスクリックがExceptionといわれエラーになってしまいます。Sendkeysでマウスクリックを送信するにはどうしたらよいのでしょうか?ネットで調べたリファレンスだと上記のような書き方で良さそうなのですが・・・ 音声認識アプリケーションはドラゴンスピーチ11Jで、OSはWin 7 ProとWin 8、どちらも64ビットです。

  • 整数÷少数

    恥ずかしい話ですが中2にもなって割り算がわかりません… 整数÷少数の割り算がいつも引っかかります 4÷0,5の計算 答えは8ですが 私は何度やっても0,8になります。   2÷0,5の計算 答えは4ですが 私がやると0,4になります。 なぜ答えは整数なんでしょうか? 整数÷少数の筆算のやり方 なぜこうなるか 教えてください

  • 整数÷少数

    恥ずかしい話ですが中2にもなって割り算がわかりません… 整数÷少数の割り算がいつも引っかかります 4÷0,5の計算 答えは8ですが 私は何度やっても0,8になります。   2÷0,5の計算 答えは4ですが 私がやると0,4になります。 なぜ答えは整数なんでしょうか? 整数÷少数の筆算のやり方 なぜこうなるか 教えてください

  • 選択ファイル(フルパス名)をアクティブセルから表示

    ダイアログボックスが自動的に開き選択ファイル(フルパス名) が表示されるVBEがあるんですが、(下記参照)改良したい点がありますので見て下さい。 Sub Excelファイル() Dim i As Integer Dim xFileNames As Variant, xFile As Variant, xDir As String With Application.FileDialog(msoFileDialogFilePicker) xFileNames = Application.GetOpenFilename( _ FileFilter:="Excel ファイル (*.xls; *.xlsx; *.xlsm),*.xls; *.xlsx; *.xlsm", MultiSelect:=True) If IsArray(xFileNames) Then i = 1 For Each xFile In xFileNames 'Xファイルネーム(フルパス名)すべての要素に同じ処理を繰り返す xDir = Dir(xFile) '変数xDir=xファイル名(ファイル名) If i = 1 Then 'i=1の場合(選択ファイル一つ目の場合) Cells(i, 1).Value = Replace(xFile, xDir, "") 'A列の中にフルパスからファイル名を取り除いた値を表示する Cells(i, 1).Offset(1).Value = xDir '1行下の値がファイル名である。 i = i + 2 'iに2を加えてループ Else '違う場合 Cells(i, 1).Value = xDir 'A列に順にファイル名を表示する i = i + 1 'iに1を加えてループ End If Next xFile 'xファイルに戻る End If Cells(Rows.Count, 1).End(xlUp).Offset(1).Activate 'データの最終行をA列で検知して一つ下の行がアクティブセル End With End Sub この命令文だとA1セルから縦に順にフルパス名が表示され、データの最終行の一つ下がアクティブセルになるようになっています。 改良したい点は、A列限定ではなくアクティブセルから順に上記と同じようにフルパス名が表示され、データの最終行の一つ下にアクティブセルがくるVBEに改良したいです。 ※上記VBEのようにアクティブセルに選択ファイル一つ目のフルパスからファイル名を取り除いたデータを表示し、   Offset(1,0)に選択ファイル一つ目のファイル名のみを表示、Offset2以降は選択ファイル2つ目以降のファイル名だけを表示するようにする。 VBA初心者なので、上記のようにそれほど難しくない構文で仕上げたいのですが、 もしできる方いましたら教えてください。 よろしくお願いいたします。

  • clisp

    land of lispを読んでいます。lispは、はじめて勉強します。 linuxにclispをインストールして、書いているのですが、lispってファイルに保存して実行とかできないんですか?REPLに入力しても間違えて入力してしまうことが多くて、(quit)で終わらせて、clispと打って、また、最初からやり直したりしています。lispプログラミングとは通常、どのようにやるものなのでしょうか? 教えてください。

  • 一回のボタンのクリックで、3つのプロシージャーを同

    一つのエクセルファイルから サイトAからデータを取得し、 全ての情報を取得し終わったら サイトBを開き、データを取得し、 データを取得し終わったら サイトCを取得して・・・と言う流れです。 一つのサイトのデータを取得したり加工したりで2分くらいかかります。 サブプロシージャーは Sub サイトAを取得() Sub サイトBを取得() Sub サイトCを取得() とありますが、 これを同時に行うにはどうすればいいでしょうか? 今は一つの処理(プロシージャー)が終わらないと次のプロシージャーに進みません。 (当たり前ですが) 一つのエクセルファイルを立ち上げ、 新しいアプリケーションで、読み取り専用で同じファイルを立ち上げ と言うのを手動でやるしかないでしょうか? 方法は何でもいいのですか 一回のボタンのクリックで、3つのプロシージャーを同時に稼働させたいです。

  • 一回のボタンのクリックで、3つのプロシージャーを同

    一つのエクセルファイルから サイトAからデータを取得し、 全ての情報を取得し終わったら サイトBを開き、データを取得し、 データを取得し終わったら サイトCを取得して・・・と言う流れです。 一つのサイトのデータを取得したり加工したりで2分くらいかかります。 サブプロシージャーは Sub サイトAを取得() Sub サイトBを取得() Sub サイトCを取得() とありますが、 これを同時に行うにはどうすればいいでしょうか? 今は一つの処理(プロシージャー)が終わらないと次のプロシージャーに進みません。 (当たり前ですが) 一つのエクセルファイルを立ち上げ、 新しいアプリケーションで、読み取り専用で同じファイルを立ち上げ と言うのを手動でやるしかないでしょうか? 方法は何でもいいのですか 一回のボタンのクリックで、3つのプロシージャーを同時に稼働させたいです。

  • ユーザーフォームの値を指定のセルに入力

    エクセルのシート上のフォームで リストのボックスの値を上下キーで値を選択エンターキーで選択した値をシートの指定したセルに入力 フォームを閉じる このようなことをさせたいのですが どのようにすればよいでしょうか よろしくお願いいたします。

  • 一回のボタンのクリックで、3つのプロシージャーを同

    一つのエクセルファイルから サイトAからデータを取得し、 全ての情報を取得し終わったら サイトBを開き、データを取得し、 データを取得し終わったら サイトCを取得して・・・と言う流れです。 一つのサイトのデータを取得したり加工したりで2分くらいかかります。 サブプロシージャーは Sub サイトAを取得() Sub サイトBを取得() Sub サイトCを取得() とありますが、 これを同時に行うにはどうすればいいでしょうか? 今は一つの処理(プロシージャー)が終わらないと次のプロシージャーに進みません。 (当たり前ですが) 一つのエクセルファイルを立ち上げ、 新しいアプリケーションで、読み取り専用で同じファイルを立ち上げ と言うのを手動でやるしかないでしょうか? 方法は何でもいいのですか 一回のボタンのクリックで、3つのプロシージャーを同時に稼働させたいです。

  • VBAの修正を助けてください

    下記のコードはC列の日付別、Z列数字の1、をA列のデータ別でBW列カウントするものなのですが、 一つ条件を追加してF列が数字の1~6の場合のA列のデータ別でカウントしたいのです。 F列が数字の1の場合は1のカウントを表示、2の場合は2のカウント表示、それぞれの数字に応じてのカウント回数を出力したいのですが、お詳しい方法を教えてください。よろしくお願いします。 Sub カウント() Dim dic As Object Dim lastRow As Long Dim r As Long Dim key As String Set dic = CreateObject("Scripting.Dictionary") 'Dictionaryオブジェクト lastRow = Range("A" & Rows.Count).End(xlUp).Row 'A列最終行 'データ収集 For r = 2 To lastRow '2行目から最終行まで If (DateValue(Cells(r, "C").Value) >= DateValue("2010/6/01")) And (DateValue(Cells(r, "C").Value) <= DateValue("2010/4/01")) Then key = Range("A" & r).Value & Chr(0) & Range("Z" & r).Value 'キー値はA列注目行の値+Z列注目行の値(間にchr(0)) If Not dic.exists(key) Then 'キー値が無ければ dic.Add key, 1 'キーを追加して、値(個数)を1に Else '既にキー値があれば dic(key) = dic(key) + 1 'そのキーの値(個数)+1 End If End If Next For r = 2 To lastRow '2行目から最終行まで key = Range("A" & r).Value & Chr(0) & "1" '探す値はA列注目行の値+"1"(間にchr(0)) Range("BW" & r).Value = dic(key) 'BW列にその値(個数)を表示 Next End Sub

  • VBAの修正を助けてください

    下記のコードはC列の日付別、Z列数字の1、をA列のデータ別でBW列カウントするものなのですが、 一つ条件を追加してF列が数字の1~6の場合のA列のデータ別でカウントしたいのです。 F列が数字の1の場合は1のカウントを表示、2の場合は2のカウント表示、それぞれの数字に応じてのカウント回数を出力したいのですが、お詳しい方法を教えてください。よろしくお願いします。 Sub カウント() Dim dic As Object Dim lastRow As Long Dim r As Long Dim key As String Set dic = CreateObject("Scripting.Dictionary") 'Dictionaryオブジェクト lastRow = Range("A" & Rows.Count).End(xlUp).Row 'A列最終行 'データ収集 For r = 2 To lastRow '2行目から最終行まで If (DateValue(Cells(r, "C").Value) >= DateValue("2010/6/01")) And (DateValue(Cells(r, "C").Value) <= DateValue("2010/4/01")) Then key = Range("A" & r).Value & Chr(0) & Range("Z" & r).Value 'キー値はA列注目行の値+Z列注目行の値(間にchr(0)) If Not dic.exists(key) Then 'キー値が無ければ dic.Add key, 1 'キーを追加して、値(個数)を1に Else '既にキー値があれば dic(key) = dic(key) + 1 'そのキーの値(個数)+1 End If End If Next For r = 2 To lastRow '2行目から最終行まで key = Range("A" & r).Value & Chr(0) & "1" '探す値はA列注目行の値+"1"(間にchr(0)) Range("BW" & r).Value = dic(key) 'BW列にその値(個数)を表示 Next End Sub

  • 平面図形の角度の問題

    図がフリーハンドで申し訳ないのですが、このXの角度が出そうで出ません。 教えていただけないでしょうか。

  • VBAのマクロについての質問です

    VBAのマクロについての質問です セルA1:タイトル1 セルA2:タイトル2 セルA3:タイトル3 上記のように各セルに文字を入力しボタンを押下します。 そうすると、事前に用意してある別のExcelファイルを(雛形.xlsとします) タイトル1.xls タイトル2.xls タイトル3.xls のような名前で入力した分だけExcelファイルを複数作成できるようにしたいのですが、 方法がよくわかりません。

  • vbsでループさせる

    vbsでループさせる http://nagabuchi.jugem.jp/?eid=237 で作ったバッチで常駐ソフト(自分はSkydriveとかのクラウドサービス)の起動を遅らせる事ができるようになり、めでたしめでたしなんですが、 セキュリティソフト(KasperskyInternetSecurity2013)より先に常駐ソフトが立がるのは問題だろうと思い、 上記URLで作成する.vbsを改良しようと思いました。 http://q.hatena.ne.jp/1203153427 を参考に以下に示すような感じに変更してみたものの、CreateObjectの行がうまくいきません。 KasperskyInternetSecurity2013 (実行ファイルはC:\Program Files (x86)\Kaspersky Lab\Kaspersky Internet Security 2013にあるavp.exe) が起動した後にstartup.batを起動するにはどうすればいいでしょうか? wait9s.batの中身 ping -n 9 127.0.0.1 > nul 問題の.vbsファイル Sub StartAfterKaspersky() Const program_name = "avp.exe" Dim x For x = 1 To 10 If processCheck(program_name) = Ture Then CreateObject("WScript.Shell")ws.run "cmd /c startup.bat",vbhide Else CreateObject("WScript.Shell")ws.run "cmd /c wait9s.bat",vbhide End If Next MsgBox "27秒も待ったのに、Kasperskyが起動しません。強制起動します。" CreateObject("WScript.Shell").Run program_name End Sub '//------------------------------------------------ ' プロセスが動いているかチェックする関数 '//------------------------------------------------ Function processCheck( pName ) '//------------------------------------------------ processCheck = False Dim objPWMI On Error Resume Next Set objPWMI = GetObject("winmgmts:{impersonationLevel=impersonate}!\\localhost\root\cimv2") Err.Clear On Error GoTo 0 If Err.Number <> 0 Then Exit Function '接続できなかったら、終了 Dim colProc Set colProc = objPWMI.ExecQuery("Select * from Win32_Process WHERE Name='" & pName & "'") If colProc.Count > 0 Then processCheck = True End Function

  • vbsでデバッグしながらコードを実行するには?

    vbaならブレークポイントを設置したり F8でステップインしながらコードを実行できますが vbsでそういうことはできないのでしょうか? 一度vbaでデバッグしながら実行してOKなら vbsファイルに張り付ける方法しかないですか?

  • vbsでデバッグしながらコードを実行するには?

    vbaならブレークポイントを設置したり F8でステップインしながらコードを実行できますが vbsでそういうことはできないのでしょうか? 一度vbaでデバッグしながら実行してOKなら vbsファイルに張り付ける方法しかないですか?

  • アウトルックvba 差出人を指定したい

    vbaでメールを送信したいのですが、 アウトルックに二つのアカウントを登録しています。 その時 Sub メール作成() Dim OlApp As Outlook.Application Dim mItem As Outlook.MailItem Set OlApp = New Outlook.Application Set mItem = OlApp.CreateItem(olMailItem) With mItem .To = "test2@docomo.ne.jp" .Subject = "メモ" .Display End With End Sub は、問題なくできるのですが、 差出人(送信者)の部分をどうすればいいかわからないです。 差出人(送信者)の部分とは、画像の部分です。 .Sender = "test@.co.jp" にすると "test@.co.jp"が、コンパイルエラー 型が一致しません。になります。 ヘルプを見ると、 MailItem の送信元のアカウントのユーザーに対応する AddressEntry オブジェクトを取得または設定します。 と書いてあります。 何を言ってるかよくわかりませんが、差出人(送信者)の指定ではないようです。 なので、 .SenderEmailAddress = "test@.co.jp" にしてみましたが、 値の取得のみ可能とのことなので、エラーになりました。 どうやって差出人の指定をすればいいのでしょうか? バージョンは2010です。 よろしくお願いします。

  • VBA クラスモジュールの使い方わかりません。

    為替データで検証中なのですがネットで使いたいクラスモジュールがあり、値の渡し方などわからなくて困ってます。 過去1ヶ月のデータで日付、始値、高値、安値、終値並んでいる値を標準モジュールからTRと言う名のクラスモジュールに渡して計算したいのですがわかりません。 標準モジュールのみで簡単なマクロを作れるレベルです。 下がTRクラスモジュールです。 どなたかお助けください。 Option Explicit Public Version As Long Public Description As String Public NumInSequences As Long Public NumParams As Long Private Sub Class_Initialize() Version = &H10000 Description = "TR(真のレンジ)" NumParams = 0 NumInSequences = 4 End Sub Public Sub Calc(A() As Double, O() As Double, H() As Double, L() As Double, C() As Double) Dim I As Integer Dim LastClose As Double '前日の終値 For I = LBound(A) To UBound(A) If C(I) = Invalid Then A(I) = Invalid GoTo NextElem End If Dim D1 As Double '今日の高値と安値の差 Dim D2 As Double '前日の終値から今日の高値までの差 Dim D3 As Double '前日の終値から今日の安値までの差 If LastClose = Invalid Then A(I) = Invalid LastClose = C(I) GoTo NextElem End If ' 3つのパターンのレンジを計算 D1 = H(I) - L(I) D2 = H(I) - LastClose D3 = LastClose - L(I) If D1 > D2 Then A(I) = D1 Else A(I) = D2 End If If (A(I) < D3) Then A(I) = D3 End If LastClose = C(I) NextElem: Next End Sub

  • VBA クラスモジュールの使い方わかりません。

    為替データで検証中なのですがネットで使いたいクラスモジュールがあり、値の渡し方などわからなくて困ってます。 過去1ヶ月のデータで日付、始値、高値、安値、終値並んでいる値を標準モジュールからTRと言う名のクラスモジュールに渡して計算したいのですがわかりません。 標準モジュールのみで簡単なマクロを作れるレベルです。 下がTRクラスモジュールです。 どなたかお助けください。 Option Explicit Public Version As Long Public Description As String Public NumInSequences As Long Public NumParams As Long Private Sub Class_Initialize() Version = &H10000 Description = "TR(真のレンジ)" NumParams = 0 NumInSequences = 4 End Sub Public Sub Calc(A() As Double, O() As Double, H() As Double, L() As Double, C() As Double) Dim I As Integer Dim LastClose As Double '前日の終値 For I = LBound(A) To UBound(A) If C(I) = Invalid Then A(I) = Invalid GoTo NextElem End If Dim D1 As Double '今日の高値と安値の差 Dim D2 As Double '前日の終値から今日の高値までの差 Dim D3 As Double '前日の終値から今日の安値までの差 If LastClose = Invalid Then A(I) = Invalid LastClose = C(I) GoTo NextElem End If ' 3つのパターンのレンジを計算 D1 = H(I) - L(I) D2 = H(I) - LastClose D3 = LastClose - L(I) If D1 > D2 Then A(I) = D1 Else A(I) = D2 End If If (A(I) < D3) Then A(I) = D3 End If LastClose = C(I) NextElem: Next End Sub