kybo の回答履歴

全829件中61~80件表示
  • 二つの構文を繋げるのには

    よろしくお願いいたします。 WIN7 EXCELL2010 です。 重複を防止するために入力規則で防ごうとしましたがユーザーフォームでデーターシートに記入すると データー 入力規則 では コピー ペーストになりできないことが調べて分かりました。 そこでマクロを適用しようとおもいます。 現在下記のマクロは適用しています。 Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, Range("K2:M100")) Is Nothing Then Exit Sub 'ココで範囲指定 Application.EnableEvents = False If Target.Value = 1 Then Target.Value = "入昼" If Target.Value = 2 Then Target.Value = "入夕" If Target.Value = 3 Then Target.Value = "入朝" If Target.Value = 4 Then Target.Value = "退朝" If Target.Value = 5 Then Target.Value = "退昼" If Target.Value = 6 Then Target.Value = "退夕" If Target.Value = 11 Then Target.Value = "パ" If Target.Value = 12 Then Target.Value = "米" If Target.Value = 13 Then Target.Value = "粥" If Target.Value = 14 Then Target.Value = "ミ" If Target.Value = 15 Then Target.Value = "毎" Application.EnableEvents = True End Sub 上記のマクロに下記のマクロを追加したいのですがどう繋げていいいのかが分かりません。 END IF, END WITHでいろいろ試しましたがうまくいきません。 どう繋げればいいいかをご指導いただけませんでしょうか。 Private Sub Worksheeet_Change(ByVal Target As Rage) If Targeet.Count <> 1 Then Exit Sub If Targeet.Row > 10 Then Exit Sub If Targeet.Column <> 1 Then Exit Sub If Application.WorksheetFunction.CountIf(Range("O:O"), Target.Value) > 1 Then MsgBox "部屋番号と入所日が重複しています" Target.Value End If End Sub

  • 二つの構文を繋げるのには

    よろしくお願いいたします。 WIN7 EXCELL2010 です。 重複を防止するために入力規則で防ごうとしましたがユーザーフォームでデーターシートに記入すると データー 入力規則 では コピー ペーストになりできないことが調べて分かりました。 そこでマクロを適用しようとおもいます。 現在下記のマクロは適用しています。 Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, Range("K2:M100")) Is Nothing Then Exit Sub 'ココで範囲指定 Application.EnableEvents = False If Target.Value = 1 Then Target.Value = "入昼" If Target.Value = 2 Then Target.Value = "入夕" If Target.Value = 3 Then Target.Value = "入朝" If Target.Value = 4 Then Target.Value = "退朝" If Target.Value = 5 Then Target.Value = "退昼" If Target.Value = 6 Then Target.Value = "退夕" If Target.Value = 11 Then Target.Value = "パ" If Target.Value = 12 Then Target.Value = "米" If Target.Value = 13 Then Target.Value = "粥" If Target.Value = 14 Then Target.Value = "ミ" If Target.Value = 15 Then Target.Value = "毎" Application.EnableEvents = True End Sub 上記のマクロに下記のマクロを追加したいのですがどう繋げていいいのかが分かりません。 END IF, END WITHでいろいろ試しましたがうまくいきません。 どう繋げればいいいかをご指導いただけませんでしょうか。 Private Sub Worksheeet_Change(ByVal Target As Rage) If Targeet.Count <> 1 Then Exit Sub If Targeet.Row > 10 Then Exit Sub If Targeet.Column <> 1 Then Exit Sub If Application.WorksheetFunction.CountIf(Range("O:O"), Target.Value) > 1 Then MsgBox "部屋番号と入所日が重複しています" Target.Value End If End Sub

  • Excel 2013 ファイルタブ 非表示について

    Excel2013でファイルタブを非表示にしたいです。 ファイルタブ以外のいわゆるリボンはCustom UI Editor Toolというので非表示にできたのですが、 ファイルタブだけ残ってしまいます。 不可能な場合、ファイルタブを押せなくするとか無効化するとかでもいいです。 どなたかご教示頂けましたら幸いです。 何卒宜しくお願い申し上げます。

  • Excel2013のマウス操作について

    Excel2010から2013に切り替えて1ヶ月目なのですが、 ドラッグして範囲を選択しようとすると最後の1つのセルしか選択されなかったり 1つのセルを選択しようとシングルクリックすると、ダブルクリックした時のような入力カーソルがでてしまって上手に選択できません…。 心象では5割の確立で失敗しています。 関係あるかわかりませんが フォルダーオプションのクリック方法は『シングルクリックで選択し、ダブルクリックで開く』の設定になっています。 これも高確率で失敗し、フォルダの中のファイルをいくつか選択しようとすると、どれもこれも開いてしまいます。選びたいだけなのに…。 長年Excelを使っていますがこんな不具合は初めてで、職場で2013を使っているのが自分だけなので周囲に相談できず困っています。 Excel2010に落としたいわけではないので、2013を使いやすくする方法をご存知の方がいらっしゃいましたら方法を教えていただければと思います。 よろしくお願いいたします。

    • miropin
    • 回答数4
  • 「一定の時間間隔で5秒毎にMacro1を実行する」

    「一定の時間間隔で5秒毎にMacro1を実行する」 一応startマクロ、stopマクロは作成してみたのですが、 下記stopコマンド実行しても止まらなかったような気がします。 ここから改変するとしたらどうですか? Public timestop As Boolean Sub test() Dim tt As Double Dim wt As Double tt = Now + TimeValue("00:00:05") '5秒後 wt = TimeValue("00:00:02") 'インターバル2秒 Application.OnTime tt, "Macro1", wt If (timestop = False) Then Time = Timer Application.OnTime earliesttime:=(Now + TimeValue("00:00:01")), procedure:="test" End If End Sub ---------------------------------------- ここからstart,stopマクロ Sub t_start() timestop = False Call test End Sub Sub t_stop() timestop = True End Sub

  • VBAで結合したセルがクリアできない

    コードは以下のように記述してあります。 Worksheets("Sheet2").Activate 'Sheet2のセルをクリア Range("B5,B6,D5:D6,F5:F6,G5,G6,A10:M54").MergeArea.ClearContentsb 別のシートの複数のセルをクリアしたいのですが、結合されたセルがクリアできないと エラーがでます。 結合セルはD5:D6とF5:F6です。 何が間違っているのでしょうか? Excel2013です。

    • oimoita
    • 回答数3
  • 「一定の時間間隔で5秒毎にマクロを実行する」

    Timer関数を使ったループ 「一定の時間間隔で5秒毎にマクロを実行する」 ようにしてMacro1を実行したいのですが、 うまくいきません。どう改変したらいいでしょうか。 Sub Macro2() Dim tt As Double Dim wt As Double tt = Now + TimeValue("00:00:05") '5秒後 wt = TimeValue("00:00:01") 'インターバル1秒 Application.OnTime TimeValue("00:00:05"), "Macro1", TimeValue("00:00:01") End Sub

  • チェックボックスで「いずれか1つを選べる」

    Excelのチェックボックスについて ご質問致します。 チェックボックスは「これかこれかこれ」というふうに選べて、 オプションボタンは「いずれか1つを選べる」というものですよね。 チェックボックスで「いずれか1つを選べる」ようには出来ませんか? 依頼主からデザイン的に四角ボタンがイイと言うことなので…。 バージョンは 作成するときは2010ですが 色んな人に配布して使用するので 2000~2013で使用できるようにしたいです。

  • VBAにて Dictionaryを使いまわしたい

    Dictionaryオブジェクトをデータベースとして、 色々なマクロから使うことは出来るのでしょうか? 以下のようなイメージですが、もちろん、これは動きません。 Sub データ()を関数にすると、その都度、辞書に登録という作業が生じるため、損をした気になるので質問しました。 Sub データ() 省略 Set myDic = CreateObject("Scripting.Dictionary") 省略 myDic.Add "菊", "50円" myDic.Add "バラ", "100円" myDic.Add "ひまわり", "100円" 省略 End Sub Sub Aさんの買い物合計() 合計=myDic.Item("菊")+myDic.Item("ひまわり") End Sub Sub Bさんの買い物合計() 合計=myDic.Item("バラ")+myDic.Item("ひまわり") End Sub

  • フォームコントロールのボタン設定

    ExcelのVBAで、ActiveX コントロールのボタンは、 CommandButton1.Enabled=False のようにして押せなくできますが、 フォームコントロールのボタンの場合でも、押せなくなる設定をすることは可能ですか?

    • Gorgons
    • 回答数2
  • VBAで結合したセルがクリアできない

    コードは以下のように記述してあります。 Worksheets("Sheet2").Activate 'Sheet2のセルをクリア Range("B5,B6,D5:D6,F5:F6,G5,G6,A10:M54").MergeArea.ClearContentsb 別のシートの複数のセルをクリアしたいのですが、結合されたセルがクリアできないと エラーがでます。 結合セルはD5:D6とF5:F6です。 何が間違っているのでしょうか? Excel2013です。

    • oimoita
    • 回答数3
  • 数値を記号に置き換えたい。

    お世話になります。 Excel2010 Access2010のクロス集計でエクスポートした下記のようなExcelファイルがあります。 型番 契約1 契約2 契約3・・・ AAA   10   5     BBB    1   CCC       8    1 DDD            5  ・  ・ この表内の数値を”○”に置き換えたいのですが、可能でしょうか。 表内を範囲指定し、置き換えの検索する文字列で「>0」としてみましたが、『条件に一致するデータは見つかりません』と表示されてしまいます。 一列ずつフィルタで空白以外で抽出して”○”をコピーすればよいのですが、契約数(列)が多いので大変手間がかかってしまいます。 何かよい方法はございますでしょうか。 ご教授の程、宜しくお願い致します。

  • マクロ コード

    列を選択するコードはどう書きますか? A列を選択したいとか、A~D列を選択とか、AとCとE列を選択とか

  • VBAでのファイルの開き方について

    いつもお世話になっております。(エクセル2010を使用) エクセルVBAを学習中の者です。 ダイアログボックスを表示してファイルを開く・・・というコードを記述しているのですが、分からない点があるためご指導をお願いします。 Sub Sample1() Dim openFileName As String openFileName = Application.GetOpenFilename filefilter:="Microsoft Excelブック,*.xls?" Workbooks.Open Filename:=openFileName End Sub を実行するとコンパイルエラーの構文エラーが表示されます。 Sub Sample2() Dim openFileName As String openFileName = Application.GetOpenFilename("Microsoft Excelブック,*.xls?") Workbooks.Open Filename:=openFileName End Sub を実行すると正常に動作します。 私の現在の知識ではSample1も正常に動作するはずなんですが・・・ (※コードはVBEをコピペしています) 両者の違いはなんでしょうか?(※スペルの間違いは無いとは思いますが・・・) どうぞよろしくお願いいたします。

  • VBAにて 型が違うとエラーが出てしまう

    以下のようなコードにて、型が違うとエラーが出てしまいます。 対処方法を教えて頂きたいです。 iro1 = "赤、3、RGB(255,0,0)" iro(3, 0) = Split(iro1, "、")(0) iro(3, 1) = Split(iro1, "、")(1) iro(3, 2) = Split(iro1, "、")(2) ’文字の色を変える With Selection.Font .Color = iro(3, 2)←型が違うとエラーが出る '.Color = RGB(255, 0, 0)←これなら問題ない .TintAndShade = 0 End With

  • VBAにて データを分解して配列に取り込みたい

    VBAにて、 このようなデータを分解して、次のような配列にしたいのですが、どうすればよいか教えてください。 iro = "赤、3、RGB(255,0,0)" このようにしたい iro(3,0)="赤" iro(3,1)=3 iro(3,2)=RGB(255,0,0)

  • 入力規則とVBA

    セルに入力規則を設定して、「A,B,C」を選べるとします。 Aを選んだとき、Bを選んだとき、Cを選んだときの処理をVBAで記述しているのですが、 「A,B,C」の値はは変わることがあるので、入力規則の一番目を選んだとき、二番目を選んだとき、三番目を選んだときのように出来ないでしょうか? VBのコンボボックスのように使いたいです。

  • 出しっぱなしで進んでしまうmsgboxは

    いつもお世話になっております。 標題のとおりですが、 私の使っているmsgboxは表示したアト、止まり、 enterを押したら制御が再開(進)します。 この度、 前処理と本処理があるプログラムを書いていますが、 前処理に時間が掛かるため、前処理が終わった時点で、 「前処理終了」と表示したいのです。 これまでのmsgboxでは、 そこでボーっとしてしまうと幾ら経っても本処理が終わらなくなってしまいます。 ということで質問しています。 本処理が進み始めたのが分かればそれでいいので、 「前処理終了」を表示するだけで、制御を進めてしまうmsgbox(またはそれに値する) 方法を教えてください。 なお、全てが終われば、当該msgが消えた方がベターです。 宜しくお願いします。

  • ワークシートをコピーしたい

    下記載のサンプルマクロは「ワークシートをコピーして、追加したワークブックにコピペする」マクロなんですが、これを「ワークシートをコピーして、追加したワークシートにコピペする」にできないでしょうか? 出来るのであれば、値と書式の他に関数もそのまま貼り付けたいので御教授お願いします。 ただマクロは削除してマクロ抜きのコピペが理想です。 宜しくお願い致します。 Sub サンプル() Dim sc As Integer sc = Application.SheetsInNewWorkbook Application.SheetsInNewWorkbook = 1 ThisWorkbook.Sheets("オリジナル").Cells.Copy 'コピー Workbooks.Add 'ブック追加 Sheets("Sheet1").Range("A1").PasteSpecial Paste:=xlValues '値貼り付け Sheets("Sheet1").Range("A1").PasteSpecial Paste:=xlFormats '書式貼り付け Sheets("Sheet1").Name = "コピー" Application.CutCopyMode = False Application.SheetsInNewWorkbook = sc ActiveWorkbook.Close ThisWorkbook.Activate End Sub

  • Excel 連結

    表に 東京 神奈川 千葉 埼玉 茨城 栃木 群馬 1     1     1                1          1            1 1                   1 とはいって 1行目 東京,神奈川,千葉 2行目 神奈川,埼玉,群馬 3行目 東京,茨城 と1が立っているとこを間にカンマを入れて連結したいです。 Excelの関数かマクロでお願いします。