advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 14733 for VBA ������������ (0.003 sec.)
[[20060409160057]]
#score: 3408
@digest: 6f181cf1b0d0d2c778cbc74e823c58ee
@id: 21406
@mdate: 2009-12-17T09:47:06Z
@size: 6450
@type: text/plain
#keywords: 名復 (22494), myvalue (21941), グ") (18620), 星人 (16171), inpt (14841), savename (13816), 用パ (13463), 者用 (8986), 理者 (5853), タグ (5270), スワ (3926), 人) (3475), 復活 (3468), columnwidth (2905), vbcritical (2524), 保護 (2502), 1234 (2342), 再表 (2177), ー( (2170), 非表 (2092), password (1819), シー (1737), パス (1655), で非 (1654), ート (1458), 管理 (1441), メニ (1398), operation (1356), skipblanks (1336), トキ (1321), ニュ (1254), inputbox (1159)
『シートを選択できないようにする』(カズマル)
複数のシートを使って一番最初にあるシートのみに反映させる ものを作っておりまして、一番最初のシート以外は いじられると面倒なので選択できないようにすることは 可能ですか? 複数人で使用しておりますので 誰かにいじられて変になると困るもので・・・ すいませんがお知恵をお貸しください。 ---- 選択できないように保護を書ける方法や 非表示にするなどは如何でしょう? (キリキ)(〃⌒o⌒)b ---- 早速のコメント有難うございます。 シートの保護はしてありますが 選択自体出来ない様にしたいのです。 シートの保護で何も出来ないようにはしてあるのですが・・・ すいません、よろしくお願いします。 ---- ツール → 保護 → シートの保護 □ロックされたセル範囲の選択 ↑ ここのチェックを外してOK。 以上で如何でしょう? (キリキ)(〃⌒o⌒)b ---- 非表示にしたいシートを選択(複数選択も可)して メニューの「書式」の「シート」の「表示しない」 で非表示になります。 表示したいときは メニューの「書式」の「シート」の「再表示」で表示したいシートを選択。 こちらは1つずつしかできません。 (やっちん) ---- うぉぉぉぉぉぉぉぉ!!! 軽くびびっちゃいました。 完璧です。 やっちんさん大変有難うございました。 ---- 上記の方法ですと、 シートを非表示にしたあとに、誰でも表示することが出来るので passwordを入力しないとシートを表示できない様にするには、 どうしたら良いでしょうか。 またVBAで非表示のシートを選択してもエラーにならない方法は どうすればよいでしょうか。 (らいち) ---- パスワードでも出来るのですが、再表示すらさせないようにしてはどうでしょうか? VBEで対象のシートのVisibleプロパティにxlSheetVeryHiddenを設定すれば 再表示もされません。(もちろん使う人がVBEを扱えれば見えるように出来ます) 再度表示させる場合は同じくVisibleプロパティにxlSheetVisibleを設定。 >またVBAで非表示のシートを選択してもエラーにならない方法はどうすればよいでしょうか。 そもそもVBAで処理を行うのでしたらシートを選択する必要は無いと思います。 Selectionを使わない処理をしてみましょう。 (momo) ---- 詳しい説明は聞かないでください(汗 しかも横槍的ですが。 <シート名隠蔽用> Private Sub シート名隠蔽_Click() ActiveWindow.DisplayWorkbookTabs = False 'シート名が消える Range("B2").Select End Sub <シート名復活用> Private Sub シート名復活_Click() Dim MyValue As String MyValue = InputBox("これより先、管理者用パスワードが必要です。", "管理者より") If MyValue = "" Or MyValue <> "1234" Then MsgBox "「入力された管理者用パスワードが間違っています。」", vbCritical Exit Sub End If ActiveWindow.DisplayWorkbookTabs = True 'シート名が現われる Sheets("メニュー (2)").Select Range("B2").Select End Sub > If MyValue = "" Or MyValue <> "1234" Then VBA起動されちゃったらお手上げだけど。 「"1234"」の1234を好きに変えてパスワードにしちゃってください。 > Sheets("メニュー (2)").Select 「"メニュー (2)"」の メニュー (2)をこのVBAを使うシートのシート名を入れてください。 上記のはシート名復活に使うやつのVBAです。 下記のはシートの保護と保護解除に使うやつのVBAです。 <シート保護用> Private Sub 保護_Click() ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True Range("B2").Select End Sub <シート保護復活用> Private Sub 開放_Click() Dim MyValue As String MyValue = InputBox("これより先、管理者用パスワードが必要です。", "管理者より") If MyValue = "" Or MyValue <> "1234" Then MsgBox "「入力された管理者用パスワードが間違っています。」", vbCritical Exit Sub End If ActiveSheet.Unprotect Range("B2").Select End Sub > If MyValue = "" Or MyValue <> "1234" Then VBA起動されちゃったらお手上げだけど。 「"1234"」の1234を好きに変えてパスワードにしちゃってください。 (おせっかい星人) ---- あ!コマンドボタン作ってそれに割り当ててね。 (おせっかい星人) ---- シートタブが見えないだけだとCtrl+PageDown(PageUp)の ショートカットキーだけでシートが移動できてしまいますね (トゥルーマン) ---- トゥルーマンさん いやんwそんなところつついちゃw ま、穴はありまくりだけど エクセルに詳しくない方々がいじくるなら ショートカットキーでシート移動なんて解らないんじゃないかと思ってみたり。 まぁ私がその中の一人だったわけで(苦笑) (おせっかい星人) ---- みなさん、有難う御座います! 早速やってみます。 (らいち) ---- >またVBAで非表示のシートを選択してもエラーにならない方法はどうすればよいでしょうか。 そもそもVBAで処理を行うのでしたらシートを選択する必要は無いと思います。 Selectionを使わない処理をしてみましょう。 (momo) ------- Selectionを使わない方法というのは、どうすればいいんでしょうか・・・ いろいろ試してみましたが、よく分かりませんでした。 今、作成しているVBAは下記の通りです。「タグ」というシートを非表示に すると、エラーが発生してしまいます。 Private Sub タグ作成_Click() Dim InPt As Long Dim SaveName As String Dim wb As Workbook, wkbk As Workbook Set wb = ThisWorkbook InPt = Application.InputBox(prompt:="管理No.を入力", Type:=2) If InPt = False Then Exit Sub Sheets("タグ").Select With wb.ActiveSheet .Range("c3").Value = InPt .Range("B2:C16").Copy End With Set wkbk = Workbooks.Add With wkbk.ActiveSheet .Range("B2").PasteSpecial Paste:=xlFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False .Range("B2").PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False .Columns("A:A").ColumnWidth = 0.5 .Columns("B:B").ColumnWidth = 10 .Columns("C:C").ColumnWidth = 50 End With SaveName = "C:¥Documents and Settings¥123¥デスクトップ¥" & InPt & "タグ.xls" ActiveWorkbook.SaveAs Filename:=SaveName, FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False wkbk.Close False Sheets("タグ").Select Selection.ClearContents Sheets("台帳").Select Set wb = Nothing Set wkbk = Nothing End Sub ---- たとえば >Sheets("タグ").Select >With wb.ActiveSheet > .Range("c3").Value = InPt > .Range("B2:C16").Copy >End With この部分であれば With wb.Sheets("タグ") .Range("c3").Value = InPt .Range("B2:C16").Copy End With とすればSelectをしないで記述できます。 非表示のシートをSelectするとActiveに出来ないのでエラーになってしまいます。 (momo) ---- 有難う御座いました!大変参考になりました。(らいち) ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/200604/20060409160057.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97050 documents and 608253 words.

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