advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 159 for (素人) (0.001 sec.)
[[20161026203911]]
#score: 10177
@digest: dfbf19ea667dc5efd97ef7d5ead36382
@id: 71909
@mdate: 2016-10-27T23:17:15Z
@size: 15961
@type: text/plain
#keywords: 点") (81741), resultcnt (45246), 得点 (28718), 算") (21421), 交代 (20256), 点記 (20111), 録番 (15013), c31 (14484), ト") (6101), ペル (6092), result (5318), け算 (5219), スタ (5072), 素人 (5023), xltoright (4677), 2016 (4545), 木) (3981), sheets (3675), ト数 (3295), clearcontents (3100), b11 (2884), ポイ (2877), range (2808), ター (2541), 記録 (2243), iserror (2168), エラ (2025), ーメ (2013), ラー (1888), 正常 (1881), activate (1842), value (1797)
『コード記述の確認』(やま)
小学生向けのくく練習ゲームらしきものを作成しています。 かなり前に、ここでご教示頂いて「正常に作動」していたファイルを利用して 「登録番号」を新設して、得点記録表に、ポイント数(C11)を記録 するように、コードを一部修正しました。現状で、得点記録は正しく 記録できていますが、次の2点についてご教示下さい。 高齢者になった今、地域で「脳トレ」にと準備中です。よろしくお願いします。 誠に勝手ですが、今夜、質問させて頂き、明朝の確認となります。 マクロボタンの 「次の人と交代します。」をクリックで Q1 「スタート」シートヘ戻らなくなってしまった。(戻っていた) Q2 「得点」シートの、登録番号(C31)を消してから「スタート」シートヘ戻したい。 Range("C31").ClerContents 等と記述してみましたがダメでした。 Sheet1 スタート B11=ポイント数 Sheet2 かけ算 Q4:Q21=記録欄 Sheet3 得点 このシートでの操作です。 F24=解答 Sub 交代Click() Dim r As Variant If Range("C31").Value <> "" And Range("B11").Value <> "" Then r = Application.Match(Range("C31").Value, Range("Q4:Q21"), 0) If IsError(r) Then Exit Sub Range("Q4:Q21").Cells(r).End(xlToRight).Offset(, 1).Value = Range("B11").Value End If If Range("K1").Value <> "" And Range("B11").Value <> "" Then r = Application.Match(Range("K1").Value, Range("P4"), 0) If IsError(r) Then Exit Sub Range("P4").Cells(r).End(xlToRight).Offset(, 1).Value = Range("B11").Value End If Sheets("スタート").Range("A1") = "" Sheets("かけ算").Range("F24").MergeArea.ClearContents Sheets("スタート").Activate ActiveWorkbook.Save End Sub < 使用 Excel:Excel2010、使用 OS:Windows10 > ---- ども^^ どうでもいい話なんですが、 > マクロボタンの 「次の人と交代します。」をクリックで 列をなして1台のパソコンに並んで待ってる人が居るのですか? 「終了」とか「クリア」とかの方が言葉としてよくないですか?^^; で、本題ですが、 >Q1 「スタート」シートヘ戻らなくなってしまった。(戻っていた) 戻っていたコードと見比べたら何かわかりませんか? 同じだよーということなら、ファイルが壊れてまともに動かないとか? >Q2 「得点」シートの、登録番号(C31)を消してから その操作をマクロの記録してみては? (間違っても、スペースを入力したり「""」と入れたり「'」と入れたりして消さないように。 それは見えない文字を入力しているだけで、値をクリアしてることになりませんから。) (まっつわん) 2016/10/27(木) 09:22 ---- Match関数がエラーしてExit Subとなっていないか? 確認方法:2つのIf IsError(r) Then Exit Sub をコメントアウトしてエラーするか否か確認する。 (mm) 2016/10/27(木) 09:27 ---- (まっつわん) 2016/10/27(木) 09:22 さん: 早々にありがとうございます。 ◎ 複数台のPCで、並んで操作をします。2分間の競争で「ポイント」を競うようなイメージです。 ◎ これから、もう一度「旧ファイル」=正常に作動の から、やり直してみますが、テンキーから C31に「入力」した番号を「消す」為の操作についてお尋ねをします。前述のコードの、どこの行に どんな「記述」をするのか? VBAは素人で、ご教示を頂いて「完成」しているものです。 (やま) 2016/10/27(木) 09:51 ---- >テンキーからC31に「入力」した番号を「消す」為の操作についてお尋ねをします。 て、テンキーから??? んと、該当セルに矢印キーで移動し、Deleteキー押下でセルの値がクリアされます。 >前述のコードの、どこの行にどんな「記述」をするのか? 然るべきタイミングの行の間に、 「マクロの記録」で得られたコードを記述してください。 >VBAは素人で、ご教示を頂いて「完成」しているものです。 素人だろうと玄人だろうと、プログラムを作っているのはあなたです。 あなたの意思で、あなたの意図をコードに書いてください。 マクロの記録の参考URL>> http://www.eurus.dti.ne.jp/‾yoneyama/Excel/vba/vba_01.html http://www.asahi-net.or.jp/‾ef2o-inue/vba_k/sub04_020.html >>Match関数がエラーしてExit Subとなっていないか? あぁ、ほんとですねぇー ブレークポイントを設置して、 http://www.239-programing.com/excel-vba/basic/basic022.html ステップ実行をして、 http://hp.vector.co.jp/authors/VA016119/step/step01.html Sheets("スタート").Activate の行が実行されているか確認してみてください。 (まっつわん) 2016/10/27(木) 10:17 ---- よくわからないのですが、 元々のコードに「登録番号」を新設された。それはSheets("得点")のRangeC31。 コードを見ると、Sheets("スタート")のRangeB11、Sheets("かけ算")のRange("Q4:Q21")を使っている様ですが、 シート名が記載されていません。これでは何をしているかわかりません。 ポイント数はC11?,B11? 得点記録=ポイント数? コードを走らせてみましたが、(シート名を追記してから) Q1 少なくともスタートシートへは移動しました。 Sheets("スタート").Activate Q2 Range("C31").ClerContents シート名を記載し、スペル間違いを修正したら消えませんか? (素人) 2016/10/27(木) 11:10 ---- (素人) 2016/10/27(木) 11:10 さん: ◎ ありがとうございます。ご指摘の通りでして、「シート名」無で記述のみでした。 単純に「記述を追加」しただけです。 ◎ 返答と「追加のご教示」とが、バッティングして、遅くなりました。 現状=下記が、すべてのコードです。得点=ポイント数 B11 です。 ポイント数=得点の記録は「正常」です。 よろしくお願いします。 Public ResultCnt As Long Sub スタート_Click() ResultCnt = 0 With ActiveSheet Range("A1").Value = Now + TimeValue("00:02:00") Application.OnTime Range("A1").Value, "計算やめ" End With With Worksheets("かけ算").Select Range("F24").Activate End With End Sub Sub 計算やめ() MsgBox " や め" With Worksheets("得点") .Select With .Range("B11") .Value = ResultCnt .Activate End With End With End Sub Sub タイム解除() Application.OnTime Range("B11").Value, "計算やめ", , False End Sub Sub 交代Click() Dim r As Variant If Sheets("得点").Range("C31").Value <> "" And Sheets("得点").Range("B11").Value <> "" Then r = Application.Match(Sheets("得点").Range("C31").Value, Sheets("得点").Range("Q4:Q21"), 0) If IsError(r) Then Exit Sub Sheets("得点").Range("Q4:Q21").Cells(r).End(xlToRight).Offset(, 1).Value = Sheets("得点").Range("B11").Value End If If Range("K1").Value <> "" And Range("B11").Value <> "" Then r = Application.Match(Range("K1").Value, Range("P4"), 0) If IsError(r) Then Exit Sub Range("P4").Cells(r).End(xlToRight).Offset(, 1).Value = Range("B11").Value End If Sheets("得点").Range("C31").ClearContents Sheets("スタート").Range("A1") = "" Sheets("かけ算").Range("F24").MergeArea.ClearContents Sheets("スタート").Activate ActiveWorkbook.Save End Sub (やま) 2016/10/27(木) 12:11 ---- 過去のログをさがしてみたのですが、相当何度も質問されていますね。 ここに書いて頂いたのは標準モジュール分ですが、かけ算シートとかにも コードを書かれていませんか? 素人の私には何をしようとしているのか読み取れませんが、 スタートボタンを押して、2分後に「やめ」のメッセージを出す様にされていますね。 「交代」のボタンもあるのですか?タイム解除のボタンも? いずれにしても、今のこのコードでは走らない様な気がします。 登録番号の役割は何ですか?記録欄との関係は? 今まで使用出来ていたコードも書いて頂けると、 どこで問題が生じたのかわかりやすいと思います。 スタートシートに戻らないとか、登録番号が消えないとかより、 他に問題があるように思います。 上級者の登場を待ちたいと思います。 (素人) 2016/10/27(木) 13:29 ---- まっつわん) 2016/10/27(木) 10:17sann: (mm) 2016/10/27(木) 09:27 さん: 素人) 2016/10/27(木) 13:29 さん: お手数を煩わせてしまい恐縮です。 ボタンは、「スタートシート」のスタートと「得点シート」の「交代」の2個です。 もう一度、「正常ファイル」から、「挑戦」してみます。 ありがとうございました。 (やま) 2016/10/27(木) 13:56 ---- ◎ 「正常」ファイルに、追加記述をするときに勘違い(記憶ミス)をしていました。 P3セルの右列にどんどん「得点記録」がされるコードをそのままにしておいて 新たに「登録番号」で名前を呼び出し「名前=得点」の表を作成し、記録していました。 得点シートの(C31)に、テンキーから入力された「番号」を消してから「スタート」画面へ行きたいが Sheets("得点").Range("C31").clearContets この行で「デバックしますか」のエラーです。 これを、削除した状態では、すべて「順調」に流れます。記録・スタートへ。 追加記述コードと 入力 行 (箇所)についてご教示ください。 Sub 交代Click() Dim r As Variant If Range("C31").Value <> "" And Range("B11").Value <> "" Then r = Application.Match(Range("C31").Value, Range("Q4:Q21"), 0) If IsError(r) Then Exit Sub Range("Q4:Q21").Cells(r).End(xlToRight).Offset(, 1).Value = Range("B11").Value End If Sheets("得点").Range("C31").clearContets Sheets("スタート").Range("A1") = "" Sheets("かけ算").Range("F24").MergeArea.ClearContents Sheets("スタート").Activate ActiveWorkbook.Save End Sub (やま) 2016/10/27(木) 15:49 ---- ClearContentsのスペルミスです。 あと、過去ログから、かけ算シートに次の様なコードは書かれていますか? (最終コードかどうかは知りません) Private Sub Worksheet_Change(ByVal Target As Range) Dim ResultCnt As Long Dim RndStr As Long Dim Result As String If Target.Row = 24 And Target.Column = 6 Then Result = IIf(Range("B7").Value * Range("I7").Value = Range("F24").Value, "◎", "?") Range("L24").Value = Result If Result = "◎" Then ResultCnt = ResultCnt + 1 Randomize RndStr = Int(120 * Rnd + 1) If ActiveSheet.Name = "かけ算" Then Range("A13").Value = RndStr Range("F24").Select End If End If End Sub (素人) 2016/10/27(木) 16:07 ---- >この行で「デバックしますか」のエラーです。 Sheets("得点").Range("C31").『clearContets』 ここでClearの頭文字が大文字になってないということはタイプミスがあるということです。 確認してください。 全部小文字で入力して、次の行に移った時に、 頭文字が大文字になるかならないかで、タイプミスが発見できます。 Sub 交代Click() Dim r As Long On Error GoTo WayOut r = WorksheetFunction.Match(Range("C31").Value, Range("Q4:Q21"), 0) On Error GoTo 0 Range("Q4:Q21").Cells(r).End(xlToRight).Offset(, 1).Value = Range("B11").Value Sheets("得点").Range("C31").ClearContents Sheets("スタート").Range("A1").ClearContents Sheets("かけ算").Range("F24").ClearContents Application.Goto Sheets("スタート").Range("A1") ThisWorkbook.Save WayOut: End Sub 他は見てません。 (まっつわん) 2016/10/27(木) 16:16 ---- (素人) 2016/10/27(木) 16:07 さん: ◎ 下記のとおりです。お手数をかけますが、よろしくお願いします。 Private Sub Worksheet_Change(ByVal Target As Range) Dim RndStr As Long Dim Result As String If Target.Row = 24 And Target.Column = 6 Then Result = IIf(Range("B7").Value * Range("I7").Value = Range("F24").Value, "◎", "?") Range("L24").Value = Result If Result = "◎" Then ResultCnt = ResultCnt + 1 Randomize RndStr = Int(120 * Rnd + 1) If ActiveSheet.Name = "かけ算" Then Range("A13").Value = RndStr Range("F24").Select End If End If (やま) 2016/10/27(木) 16:28 ---- (まっつわん) 2016/10/27(木) 16:16 さん: ◎ ありがとうございます。下記の行で「エラー」でした。お願いします。 Sheets("得点").Range("C31").ClearContents (やま) 2016/10/27(木) 16:30 ---- いやいや、かけ算シートのコードは今、関係無いでしょ?問題無いんでしょ? まっつわんさんと私の指摘を見てくれましたか? Sheets("得点").Range("C31").clearContetsのClearContentsのスペルミスです。 スペルを直したのにエラーになるところじゃありません。 よろしくお願いしますね。 (素人) 2016/10/27(木) 16:40 ---- エラーコードとエラーメッセージを、正確に記載してください。エラーになります、だけではさっぱり判りませんよ。 あと、こういうエラーの原因を調べることをデバッグと言い、自分でやるべき事です。人にやらせては駄目。ましてや、命令の打ち間違いを見つけられてしまうなんて、プログラミングする人にとって恥ずかしい事なのだ、ということを肝に銘じてください。(私はよく、人に尻を拭かせる、と表現します) で、よく間違えるのが、まっつわんさんの指摘したような、命令の打ち間違い。この場合、「オブジェクトは、このプロパティまたはメソッドをサポートしていません。」というエラーになります。知らない命令を書いているのだから、指摘通りの間違いですね。 次に、シート名が実在しない場合、「インデックスが有効範囲にありません。」となります。ほら、私は推測で2つもエラーメッセージを書きましたが、貴方は実際に出たメッセージを1つ書けば良いだけだったのですよ? 既に2倍以上の手間をかけさせている訳です。 人に頼りすぎないようにお願いしますね。 (???) 2016/10/27(木) 16:49 ---- >ありがとうございます。下記の行で「エラー」でした。お願いします。 > Sheets("得点").Range("C31").ClearContents ↑でエラーになるんですか? じゃぁ、エラーメッセージも横着せずにちゃんと全部書いてください。 エラーが出るなら、 エラーメッセージとエラーになった行はセットで提示するのは最低限の基本。 回答側には、あなたのパソコンが見れないのですから。。。 そして、エラーメッセージそのままで検索かけると、 大抵似たようなことで困っている人の質問が見つかるので、 それで解決することは多いし、 出来ればそれくらいチェックしてから質問もして欲しいかも。 最初はなかなか難しいけど検索が上手になるのも、 問題が早く解決して掲示板で聞くよりいいですよ^^ (まっつわん) 2016/10/27(木) 16:53 ---- ???さん、まっつわんさん、素人がでしゃばり申し訳ありません。 今日は定時退社で明日は出張不在となります。 よろしくお願い致します。 (素人) 2016/10/27(木) 17:02 ---- いやいや、素人さんはどんどんでしゃばってください。 そうやって他人の問題を調べていくうちに、いろいろ上達していきますよ。今後とも頑張ってくださいませ。 (???) 2016/10/27(木) 17:06 ---- ???さん、ありがとう御座います。 そう言って頂けると、励みになります。 では失礼致します。 (素人) 2016/10/27(木) 17:08 ---- (まっつわん) 2016/10/27(木) 16:53 さん: ◎ 大変失礼をしました。マナーも理解できていないのに「質問」で申し訳ありません。 Microsoft Vissual Basic 実効時エラー '1004': 結合されたセルの一部を変更することはできません。 以上ですが? ここのことでしょうか? よろしくお願いします (やま) 2016/10/27(木) 17:11 ---- あー、セル結合しているのですね。メッセージ通りです。 結合したセル範囲で指定してみてください。「一部」を変えられないのだから、「全部」を変えるのです。 (???) 2016/10/27(木) 17:53 ---- 途中から失礼します。 「結合されたセルの一部を変更することはできません。」 と手持ちのスマホで調べてみたら、 候補として最初の方に下記質問サイトがありました。 (http://oshiete.goo.ne.jp/qa/1411049.html) Sheets("得点").Range("C31").ClearContentsでこのエラーが 発生したのは、セルC31が結合されたセルだからということですよね。 すでに、 Sheets("かけ算").Range("F24").MergeArea.ClearContents と書いていらっしゃいます。 (ラビット) 2016/10/27(木) 18:02 ---- 結合になっているセルのクリアは、以下のコードでも可能です。 Sheets("得点").Range("C31").Value = Empty (β) 2016/10/27(木) 18:03 ---- (ラビット) 2016/10/27(木) 18:02さん: (β) 2016/10/27(木) 18:03 さん: ◎ ありがとうございました。 解決しました。感謝です! セルの結合=老人会での使用なので、大きく表示を「質問」に付して おけば、早く解決したのですね。 夕方までの「ご教示」には、大変失礼をしてしまいました。 (やま) 2016/10/27(木) 19:01 ---- 昨日は、何度もご教示を頂きありがとうございました。昨夜、お陰様で解決しました。 今回は、質問の仕方にも「不適際」が幾つかあり、反省点がありました。 ◎ コードは、半角英数で入力し、「改行」で、頭文字が大文字に代われば「スペル」良し。 ◎ 質問のポイントをしっかりと「表現」すること。 多数の皆様の、ご教示に感謝致しております。 (やま) 2016/10/28(金) 08:17 ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/201610/20161026203911.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97056 documents and 608292 words.

訪問者:カウンタValid HTML 4.01 Transitional