目安箱 IV

目安箱投稿のルールはこちらをごらんください。
ご意見は電子メールで承っています。
「目安箱」は質問禁止です。技術的な質問はそれぞれの質問箱へどうぞ。

迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。

  新規投稿 ┃ツリー表示 ┃一覧表示 ┃トピック表示 ┃検索 ┃設定 ┃ホーム  
13 / 14 ページ ←次へ | 前へ→

【44】Excel 97 以降で、メニュー項目を簡単に追加...
Excel  谷 誠之 E-MAIL  - 04/4/9(金) 21:54 -

引用なし
パスワード
   既存のメニューに新しいメニュー項目を追加するサブルーチンです。
ここでメニュー項目とは、例えば「ファイル(F)」メニューの中の「新規作成(N)...」や「開く(O)...」などの、それを実行したら何らかのアクションを起こす(つまり、マクロを登録する)メニューのことです。

私は変数名によく日本語を使います。これは賛否両論あると思いますが、私は「既存のメソッドやプロパティと区別できる」「コメントの代わりになる」という理由で使っています。

Sub MakeNewMenu(親 As Object, メニュー名 As String, マクロ名 As String, グループ As Boolean)

  Dim SubMenu As CommandBarButton
  Set SubMenu = 親.Controls.Add(msoControlButton)
  With SubMenu
    .Caption = メニュー名
    .OnAction = マクロ名
    .BeginGroup = グループ
    .Style = msoButtonCaption
  End With

End Sub
・ツリー全体表示

【43】Excel 97 以降で、メニューを簡単に追加する...
Excel  谷 誠之 E-MAIL  - 04/4/9(金) 21:50 -

引用なし
パスワード
   新しいメニューを作るための関数です。
ここで「メニュー」とは、「ファイル(F)」「編集(E)」などの、第一階層のメニューのことをさします。

戻り値は、新しく作成したメニューオブジェクト(正確には CommandBarPopup オブジェクト)です。

Function F_MakeNewPopup(親 As Object, メニュー名 As String, グループ As Boolean) As CommandBarPopup

  Dim NewMenu As CommandBarPopup
  Set NewMenu = 親.Controls.Add(msoControlPopup)
  With NewMenu
    .Caption = メニュー名
    .BeginGroup = グループ
  End With
  
  Set F_MakeNewPopup = NewMenu

End Function
・ツリー全体表示

【42】Excel 97 以降で、メニューを簡単に追加/削...
Excel  谷 誠之 E-MAIL  - 04/4/9(金) 21:43 -

引用なし
パスワード
   Excel 97 以降では、メニューの操作に CommandBars コレクションを使います。
この CommandBars コレクション(正確にはそこから呼び出される CommadBar オブジェクト)には様々なコレクションやメソッドがあり、幅広いメニュー操作、またはコマンドボタン操作が可能です。

しかし高機能すぎて、「簡単にメニューを追加/削除する」のはちょっと難しいと感じました。

そこで、オリジナルのメニュー操作関数を作成しました。
みなさん、ご自由にお使いください。
自分では結構気に入っています。
・ツリー全体表示

【41】bykinさん作「ToolStar」配布の件
Excel  谷 誠之 E-MAIL  - 04/3/5(金) 0:27 -

引用なし
パスワード

【添付ファイル】 〜添付ファイル〜
[削除されました]
   VBA研究所主宰者の谷です。

このたび、Excel質問箱に時々回答をお寄せくださる bykin さんから、便利なアドインを預かりましたのでここで配布いたします。
(れいぞーさんのExcelFactoryやエクセルファンクラブでも公開されています)


■概要
 Tool★彡 (ツールスター) は Microsoft Excel に組み込んで使用する、便利なツール集です。
 インターネットの質問掲示板に投稿された質問に対して作者が回答した内容を元に作成した
 機能や、作者が独自に開発した機能をまとめたものです。
 標準機能にあるようでなかった便利機能をそろえています。

 各機能を詳細に解説したヘルプファイルや、専用の登録プログラムも同梱しています。
 COMアドインならではの快適さをお試しください。

■動作環境
 Excel2000/Excel2002/Excel2003

■使用方法
 ToolStar.lzhを解凍後に解凍先フォルダ内のToolStar_ReadMe.txtを参照してください。

■各機能説明

 ★彡 セル選択一部解除 ★彡

 複数のセルをCtrlキーを押しながら順番に選択しているときに、間違って関係のないセルを
 選択してしまったことはありませんか?
 一般機能では選択済みセルの一部解除機能がないため、一旦選択を解除して一からやり直さ
 なければいけません。
 そういうときは・・・この機能をお使いください。

 ★彡 数式一覧作成 ★彡

 ワークシートで使用されている数式を確認するためには、セルの表示を数式に変更すること
 もできますが、数式はセルに入りきらないことが多くて確認しやすいとはいえません。
 「数式一覧作成」ではアクティブなワークシートの数式を新しいワークシートに一覧形式で
 書き出します。ワークシートの解析にご利用ください。

 ★彡 セル色変更 ★彡

 選択範囲のセルの塗りつぶしの色を検索して、同じ色のセルをまとめて別の色に変更します。
 同一色で塗りつぶしたセル範囲が矩形以外の場合等に便利な機能です。

 ★彡 ワークシート画像変換 ★彡

 選択セル範囲を画像として保存します。対応フォーマットはGIF/JPEG/PNGです。
 保存後はペイント/InternetExplorer/拡張子に関連付けられたソフトで開くことができま
 す。

 ★彡 罫線→シェイプ変換 ★彡

 選択セル範囲のセルの罫線をオートシェイプの直線に変換します。
 直線の形状/色はできるだけ元の罫線に近いものにしています。

 ★彡 雲形シェイプ作成 ★彡

 選択セル範囲の縁またはあらかじめ作成したフリーフォームの辺にそって半円弧を連続描画
 することにより、雲形のシェイプを作成します。

■著作権等
 この作品は作者であるbykinがフリーソフトとして公開するものです。
 著作権はbykinが保有しています。
 この作品の使用に際して発生したいかなる損害に対しても、作者は一切の責任を負いません。
 使用される皆様の自己責任にてご使用ください。
・ツリー全体表示

【40】Re:PikaTool202.xlsについて
Excel  ぴかる  - 03/11/23(日) 11:12 -

引用なし
パスワード
   ミルキさん、こんにちは。

>トビトビの範囲指定機能いいですね。
ありがとうございます。お役に立てそうで光栄です。他の機能もよろしくです。
(おすすめ機能は、おためしコーナーにあります。)

>それで質問ですが、やっぱり各PCにセットスタートする必要があるんでしょうね?範囲ロックしたファイルを、セットスタートしていないPCで開いたときは、どうなるのでしょうか?
>他課の人も使うファイルですので・・・
はい、各PCにセットして下さい。そうしないと機能しません。
ただピカつーるは、Win.XPが苦手です。セット出来ない場合があります。ご了承下さい。
パスワード要求が出たら、[ PIKARU ]を入力して下さい。

会社のみなさんにも、よろしくお伝え下さい。ありがとうございました。
それとこのような内容は、極力、質問箱もしくは石鹸箱にてお願いします。
・ツリー全体表示

【39】PikaTool202.xlsについて
Excel  ミルキ  - 03/11/22(土) 23:39 -

引用なし
パスワード
   こんばんは、先日はエクセルファンでの質問に回答していただきありがとうございました。先ほど、PikaTool202.xlsをダウンロードして、お試しコーナーつかわせていただきました。
トビトビの範囲指定機能いいですね。
それで質問ですが、やっぱり各PCにセットスタートする必要があるんでしょうね?範囲ロックしたファイルを、セットスタートしていないPCで開いたときは、どうなるのでしょうか?
他課の人も使うファイルですので・・・
お手数ですがすいません。
・ツリー全体表示

【38】文中間違い訂正。
Excel  Jaka  - 03/10/29(水) 12:14 -

引用なし
パスワード
   >36となってしまいますが、
 ↓
37

>地中の自転までの...
地中 → 地球
・ツリー全体表示

【37】不特定な祝日を求めるエクセル関数とマクロ...
Excel  Jaka  - 03/10/28(火) 11:29 -

引用なし
パスワード
   不特定な祝日を求めるエクセル関数とマクロ関数。


検索曜日Noは、下記として。
日 月 火 水 木 金 土
1 2 3 4 5 6 7


基本(日にちだけです。)
=IF(検索曜日No>=WEEKDAY(DATE(年,月,1),1),検索曜日No-WEEKDAY(DATE(年,月,1),1)+((検索週-1)*7)+1,8-WEEKDAY(DATE(年,月,1),1)+((検索週-1)*7)+検索曜日No)

注)単純に足し算しているだけなので、存在しない2003年8月の第6土曜日は、36となってしまいますが、年、月、週、曜日が固定ならこれで十分だと思います。

1月の第2月曜日(成人の日)
=DATE(2003,1,IF(2>=WEEKDAY(DATE(2003,1,1),1),2-WEEKDAY(DATE(2003,1,1),1)+((2-1)*7)+1,8-WEEKDAY(DATE(2003,1,1),1)+((2-1)*7)+2))

7月の第3月曜日(海の日)
=DATE(2003,7,IF(2>=WEEKDAY(DATE(2003,7,1),1),2-WEEKDAY(DATE(2003,7,1),1)+((3-1)*7)+1,8-WEEKDAY(DATE(2003,7,1),1)+((3-1)*7)+2))

9月の第3月曜日(敬老の日)
=DATE(2003,9,IF(2>=WEEKDAY(DATE(2003,9,1),1),2-WEEKDAY(DATE(2003,9,1),1)+((3-1)*7)+1,8-WEEKDAY(DATE(2003,9,1),1)+((3-1)*7)+2))

10月の第2月曜日(体育の日)
=DATE(2003,10,IF(2>=WEEKDAY(DATE(2003,10,1),1),2-WEEKDAY(DATE(2003,10,1),1)+((2-1)*7)+1,8-WEEKDAY(DATE(2003,10,1),1)+((2-1)*7)+2))


存在しないデータを記入し、存在しない日付を返したくない時にエラーを返したいなら。

基本
=DATEVALUE(年 & "/" & 月 & "/" & IF(検索曜日No>=WEEKDAY(DATE(年,月,1),1),検索曜日No-WEEKDAY(DATE(年,月,1),1)+((検索週-1)*7)+1,8-WEEKDAY(DATE(年,月,1),1)+((検索週-1)*7)+検索曜日No))

例 セルにデータを記入して、2003年3月の第5、日曜日の年月日を求める。

 A    B    C    D
1 年   検索月  検索週  検索曜日
2 2003   3     5     1

=DATEVALUE($A$2 & "/" & $B$2 & "/" & IF($D$2>=WEEKDAY(DATE($A$2,$B$2,1),1),$D$2-WEEKDAY(DATE($A$2,$B$2,1),1)+(($C$2-1)*7)+1,8-WEEKDAY(DATE($A$2,$B$2,1),1)+(($C$2-1)*7)+$D$2))


・マクロ版エクセル関数(日にちだけ返します。)
(単純に回してるだけです。)

Function SarCWeek関数(年, 月, 検索週, 曜日)
  Dim DCnt As Long, DM As String, DD As String, FCFDM As String
  Application.Volatile
  FCFDM = Format(CDate(年 & "/" & 月 + 1 & "/" & 1) - 1, "d")
  For i = 1 To FCFDM
    bby = Format(CDate(年 & "/" & 月 & "/" & i), "aaa")
    If Format(CDate(年 & "/" & 月 & "/" & i), "aaa") = 曜日 Then
      DCnt = DCnt + 1
      If 検索週 = DCnt Then
       SarCWeek関数 = i
       Exit Function
      End If
    End If
  Next
  SarCWeek関数 = CVErr(xlErrValue)
End Function


PS
春分、秋分の日は、堪忍してください。
地中の自転までの計算はちょっと...
独断と偏見で、取合えず目安箱に載せます。
・ツリー全体表示

【35】Re:クロス集計のSQL1
Access  平社員  - 02/12/6(金) 12:40 -

引用なし
パスワード
   >
>    Namae    Year    Month    Blood
>    みみ     1995    1月    A型
>    さすけ    1995    4月    B型
>    じろう    1995    1月    O型
>    たろう    1995    3月    AB型
>    はなこ    1995    2月    A型
>    猫    1995    3月    AB型
上記はすべて1995年で保存ですが。
下記には年が違う形で表示されていますが・・・

>上記の様なデータを下記のように集計するためには、
>
>Year 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
>1995 じろう     
>1995  さすけ    
>1996  たろう    
>1997 はなこ     
>1998 みみ      
>1999  犬    
>1999  猫    
>
・ツリー全体表示

【34】Re:クロス集計のSQL1
Access  孫悟空  - 02/12/6(金) 11:53 -

引用なし
パスワード
   以下の様なテーブル定義で

create table
user_tbl(
Namae text(20),
Year text(4),
Month text(3),
Blood text(10),
primary key(
Namae)
)

    Namae    Year    Month    Blood
    みみ     1995    1月    A型
    さすけ    1995    4月    B型
    じろう    1995    1月    O型
    たろう    1995    3月    AB型
    はなこ    1995    2月    A型
    猫    1995    3月    AB型

上記の様なデータを下記のように集計するためには、

Year 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
1995 じろう     
1995  さすけ    
1996  たろう    
1997 はなこ     
1998 みみ      
1999  犬    
1999  猫    

下記の様なSQLでクロス集計ができます。
SELECT
Year,
IIf(Month='1月',Namae,Null) AS 1月,
IIf(Month='2月',Namae,Null) AS 2月,
IIf(Month='3月',Namae,Null) AS 3月,
IIf(Month='4月',Namae,Null) AS 4月,
IIf(Month='5月',Namae,Null) AS 5月,
IIf(Month='6月',Namae,Null) AS 6月,
IIf(Month='7月',Namae,Null) AS 7月,
IIf(Month='8月',Namae,Null) AS 8月,
IIf(Month='9月',Namae,Null) AS 9月,
IIf(Month='10月',Namae,Null) AS 10月,
IIf(Month='11月',Namae,Null) AS 11月,
IIf(Month='12月',Namae,Null) AS 12月
FROM user_tbl
Order by Year;
・ツリー全体表示

【33】Re:クロス集計のSQL2
Access  孫悟空  - 02/12/6(金) 11:51 -

引用なし
パスワード
   以下の様な構造のテーブルで、
CREATE TABLE
テスト_tbl(
支店 TEXT(10),
部門 TEXT(10),
金額 LONG,
PRIMARY KEY
(支店,部門)
)

以下のようなデータを
    支店    部門        金額
    A    100        400    
    A    200        100    
    A    300        200    
    A    400        300    
    B    100        100    
    B    200        300    
    B    300        150    
    B    400        250    
    C    100        200    
    C    200        200    
    C    300        200    
    C    400        300    
    D    100        500    
    D    200        400    
    D    300        100    
    D    400        200    

支店,部門でクロス集計して
下記のような集計をするには、

支店    100    200    300    400    500    600    700    800    900    部門合計金額
A    400    100    200    300    0    0    0    0    0    1000
B    100    300    150    250    0    0    0    0    0    800
C    200    200    200    300    0    0    0    0    0    900
D    500    400    100    200    0    0    0    0    0    1200

下記のようなSQLで実現出来ます。

SELECT 支店,
sum(iif(部門='100',金額,0)) AS 100,
sum(iif(部門='200',金額,0)) AS 200,
sum(iif(部門='300',金額,0)) AS 300,
sum(iif(部門='400',金額,0)) AS 400,
sum(iif(部門='500',金額,0)) AS 500,
sum(iif(部門='600',金額,0)) AS 600,
sum(iif(部門='700',金額,0)) AS 700,
sum(iif(部門='800',金額,0)) AS 800,
sum(iif(部門='900',金額,0)) AS 900,
sum(金額) AS 部門合計金額
FROM テスト_tbl
GROUP BY 支店
ORDER BY 支店;
・ツリー全体表示

【31】クロス集計のSQL
Access  孫悟空  - 02/12/6(金) 10:47 -

引用なし
パスワード
   アクセスのクロス集計を一般的なSQLで実現する方法はありますか?
・ツリー全体表示

【27】最後に
Excel  ぴかる  - 02/9/3(火) 12:52 -

引用なし
パスワード
   大変面倒な作業だったと思います。うまく出来たでしょうか?。おひとりでも採用していただけると幸いです。何分、素人が作成したソフトなのでいろんな不具合はあると思われます。ご了承下さい。ご意見ご感想ご質問等ございましたら、下記までよろしくお願いします。

ご意見ご感想、使い方に対する質問は、
 石鹸箱↓にてお願いします。
http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=83;id=

VBAに関する質問は、
 質問箱↓にてお願いします。答えられる範囲でお答えします。
http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=159;id=excel
・ツリー全体表示

【26】Class1
Excel  ぴかる  - 02/9/3(火) 7:57 -

引用なし
パスワード
   Public WithEvents WBK As Workbook
Public WithEvents App As Application
Private Sub App_SheetActivate(ByVal Sh As Object)
   
  If フラグ <> 1 Then
   If Sh.Type = xlWorksheet And Sh.ProtectContents = False Then
    WBK_SheetSelectionChange ActiveSheet, Selection
   Else
    ShiyoKa False
   End If
  End If
  
End Sub
Private Sub App_WorkbookActivate(ByVal Wb As Workbook)
   
   InitializeBook WBook:=Wb
   App_SheetActivate ActiveSheet

End Sub
Private Sub App_WorkbookDeactivate(ByVal Wb As Workbook)
  
   ShiyoKa False

End Sub
Private Sub WBK_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
  
   If (ThisWorkbook.Name = "ピカつーる.xla") And (Sh.ProtectContents = False) Then
   ShiyoKa True
   With Application.CommandBars("Cell")
     With .Controls(11)
       If .BuiltIn = False Then .Enabled = True
     End With
   End With
   With Application.CommandBars("オリジナル書式設定")
   If Target.VerticalAlignment = xlBottom Then
    .Controls(12).State = msoButtonDown
   ElseIf Target.VerticalAlignment = xlCenter Then
    .Controls(13).State = msoButtonDown
   ElseIf Target.VerticalAlignment = xlTop Then
    .Controls(14).State = msoButtonDown
   End If
   End With
   Else
   ShiyoKa False
   With Application.CommandBars("Cell")
     With .Controls(11)
       If .BuiltIn = False Then .Enabled = False
     End With
   End With
   End If
  
  If Application.CutCopyMode = xlCopy Then
   With Application.CommandBars("Cell")
     With .Controls(7)
       If .BuiltIn = False Then .Enabled = True
     End With
   End With
  Else
   With Application.CommandBars("Cell")
     With .Controls(7)
       If .BuiltIn = False Then .Enabled = False
     End With
   End With
  End If

End Sub
・ツリー全体表示

【25】文字変換
Excel  ぴかる  - 02/9/2(月) 21:32 -

引用なし
パスワード
   Dim タイトル As String
Dim スタイル As String
Dim メッセージ As String
Dim YESNO As String
Dim 変換数 As Long
Sub 文字変換操作説明()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "{ul 1}{cf 1}《 文字変換 操作説明 》{cf 0}{ul 0}   "
    .Text = String(30, " ")
    .Labels(1).Text = "選択範囲すべてを指定の文字に変換します。"
    .Labels(2).Text = "選択数が2000を越えるとメッセージが出ます。"
    .Labels(3).Text = "マクロにての動作の為、元に戻せません。"
    .Show
  
  End With

End Sub
Sub 文字変換操作説明97()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "《 文字変換 操作説明 》"
    .Text = String(30, " ")
    .Labels(1).Text = "選択範囲すべてを指定の文字に変換します。"
    .Labels(2).Text = "選択数が2000を越えるとメッセージが出ます。"
    .Labels(3).Text = "マクロにての動作の為、元に戻せません。"
    .Show
  
  End With

End Sub
Sub 全角()
     
  Dim セル As Range
  
  If (ActiveSheet.ProtectContents) Or (TypeName(Selection) <> "Range") Then
   エラーメッセージ
  Else
  
   変換数 = Selection.Count
   If 変換数 > 2000 Then
   メッセージ = "変換数が" & 変換数 & "と多くなっています。" & vbLf & _
          "時間が掛かりますが、実行しますか?。"
   スタイル = vbYesNo + vbQuestion + vbDefaultButton1 + vbApplicationModal
   タイトル = " 【 文字変換 】"
   YESNO = MsgBox(メッセージ, スタイル, タイトル)
  
   If YESNO = vbYes Then
   Else
    MsgBox "キャンセルしました。", vbInformation, タイトル
    Exit Sub
   End If
   End If
  
  
  Application.ScreenUpdating = False  '画面固定
   For Each セル In Selection
    セル = StrConv(セル, vbWide)
   Next

  Set セル = Nothing
  End If
 
End Sub
Sub 半角()
  
  Dim セル As Range
  
  If (ActiveSheet.ProtectContents) Or (TypeName(Selection) <> "Range") Then
   エラーメッセージ
  Else
  
   変換数 = Selection.Count
   If 変換数 > 2000 Then
   メッセージ = "変換数が" & 変換数 & "と多くなっています。" & vbLf & _
          "時間が掛かりますが、実行しますか?。"
   スタイル = vbYesNo + vbQuestion + vbDefaultButton1 + vbApplicationModal
   タイトル = " 【 文字変換 】"
   YESNO = MsgBox(メッセージ, スタイル, タイトル)
  
   If YESNO = vbYes Then
   Else
    MsgBox "キャンセルしました。", vbInformation, タイトル
    Exit Sub
   End If
   End If
  
  Application.ScreenUpdating = False  '画面固定
   For Each セル In Selection
    セル = StrConv(セル, vbNarrow)
   Next
  End If

  Set セル = Nothing
 
End Sub
Sub 大文字()
  
  Dim セル As Range
  
  If (ActiveSheet.ProtectContents) Or (TypeName(Selection) <> "Range") Then
   エラーメッセージ
  Else
  
   変換数 = Selection.Count
   If 変換数 > 2000 Then
   メッセージ = "変換数が" & 変換数 & "と多くなっています。" & vbLf & _
          "時間が掛かりますが、実行しますか?。"
   スタイル = vbYesNo + vbQuestion + vbDefaultButton1 + vbApplicationModal
   タイトル = " 【 文字変換 】"
   YESNO = MsgBox(メッセージ, スタイル, タイトル)
  
   If YESNO = vbYes Then
   Else
    MsgBox "キャンセルしました。", vbInformation, タイトル
    Exit Sub
   End If
   End If
  
  Application.ScreenUpdating = False  '画面固定
   For Each セル In Selection
    セル = UCase(セル)
   Next
  End If

  Set セル = Nothing

End Sub
Sub 小文字()
  
  Dim セル As Range
  
  If (ActiveSheet.ProtectContents) Or (TypeName(Selection) <> "Range") Then
   エラーメッセージ
  Else
  
   変換数 = Selection.Count
   If 変換数 > 2000 Then
   メッセージ = "変換数が" & 変換数 & "と多くなっています。" & vbLf & _
          "時間が掛かりますが、実行しますか?。"
   スタイル = vbYesNo + vbQuestion + vbDefaultButton1 + vbApplicationModal
   タイトル = " 【 文字変換 】"
   YESNO = MsgBox(メッセージ, スタイル, タイトル)
  
   If YESNO = vbYes Then
   Else
    MsgBox "キャンセルしました。", vbInformation, タイトル
    Exit Sub
   End If
   End If
  
  Application.ScreenUpdating = False  '画面固定
   For Each セル In Selection
    セル = LCase(セル)
   Next
  End If

  Set セル = Nothing

End Sub
・ツリー全体表示

【22】入力設定
Excel  ぴかる  - 02/9/2(月) 21:29 -

引用なし
パスワード
   Sub 入力設定操作説明()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "{ul 1}{cf 1}《 入力設定 操作説明 》{ul 0}   "
    .Text = String(40, " ")

    .Labels(1).Text = "{cf 252}【 入力範囲設定 】" & vbLf & _
             "{cf 2} [入力範囲ロック]" & vbLf & _
             "{cf 0}  現在の選択範囲セル(トビトビ範囲可)のみを移動範囲として" & vbLf & _
             "  ロック出来ます。" & vbLf & _
             "{cf 2} [一時解除]" & vbLf & _
             "{cf 0}  一時的にシート保護解除して、編集可状態に出来ます。" & vbLf & _
             "{cf 2} [再設定]" & vbLf & _
             "{cf 0}  再び、前の領域設定に戻します。 ファイルを開いた直後は、" & vbLf & _
             "  解除されているので再設定が必要となります。" & vbLf & _
             "   ( 2002は、保存されているそうです。)"
    .Labels(2).Text = "{cf 252}【 日本語入力 】" & vbLf & _
             "{cf 0}  現在の選択範囲セルを好みの日本語入力状態にロック出来ます。" & vbLf & _
             "  文章を入力するセルには、[オン固定]" & vbLf & _
             "  数値を入力するセルには、[オフ固定]" & vbLf & _
             "   とすると円滑にデータ入力する事が出来ます。"
    .Labels(3).Text = "{cf 252}【 Enter移動 】" & vbLf & _
             "{cf 0}  [Enter]後の移動方向の設定です。"
    .Show
  
  End With

End Sub
Sub 入力設定操作説明97()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "《 入力設定 操作説明 》"
    .Text = String(40, " ")

    .Labels(1).Text = "【 入力範囲設定 】" & vbLf & _
             " [入力範囲ロック]" & vbLf & _
             "  現在の選択範囲セル(トビトビ範囲可)のみを移動範囲として" & vbLf & _
             "  ロック出来ます。" & vbLf & _
             " [一時解除]" & vbLf & _
             "  一時的にシート保護解除して、編集可状態に出来ます。" & vbLf & _
             " [再設定]" & vbLf & _
             "  再び、前の領域設定に戻します。 ファイルを開いた直後は、" & vbLf & _
             "  解除されているので再設定が必要となります。" & vbLf & _
             "   ( 2002は、保存されているそうです。)"
    .Labels(2).Text = "【 日本語入力 】" & vbLf & _
             "  現在の選択範囲セルを好みの日本語入力状態にロック出来ます。" & vbLf & _
             "  文章を入力するセルには、[オン固定]" & vbLf & _
             "  数値を入力するセルには、[オフ固定]" & vbLf & _
             "   とすると円滑にデータ入力する事が出来ます。"
    .Labels(3).Text = "【 Enter移動 】" & vbLf & _
             "  [Enter]後の移動方向の設定です。"
    .Show
  
  End With

End Sub
Sub 入力範囲ロック()

   ActiveSheet.Unprotect
   Cells.Locked = True
   Selection.Locked = False
   ActiveSheet.EnableSelection = xlUnlockedCells
   ActiveSheet.Protect

End Sub
Sub 一時解除()

   ActiveSheet.Unprotect

End Sub
Sub 再設定()

   ActiveSheet.Unprotect
   ActiveSheet.EnableSelection = xlUnlockedCells
   ActiveSheet.Protect

End Sub
Private Sub 再表示()
 
  Application.CommandBars("PikaBar").Controls("入力設定").Visible = True

End Sub

'ボタンに対応
Private Sub 変換_1()
  If (ActiveSheet.ProtectContents) Or (TypeName(Selection) <> "Range") Then
   エラーメッセージ
  Else
   日本語変換 xlIMEModeOn
  End If
End Sub
Private Sub 変換_2()
  If (ActiveSheet.ProtectContents) Or (TypeName(Selection) <> "Range") Then
   エラーメッセージ
  Else
   日本語変換 xlIMEModeOff
  End If
End Sub
Private Sub 変換_3()
  If (ActiveSheet.ProtectContents) Or (TypeName(Selection) <> "Range") Then
   エラーメッセージ
  Else
   日本語変換 xlIMEModeNoControl
  End If
End Sub
Private Sub 方向_1()
  移動方向 1
End Sub
Private Sub 方向_2()
  移動方向 2
End Sub
Private Sub 方向_3()
  移動方向 3
End Sub
Private Sub 方向_4()
  移動方向 4
End Sub
Private Sub 方向_5()
  移動方向 5
End Sub
Private Sub 入力設定ON()
  Dim Iflg, II%
  Application.StatusBar = "入力設定"
  Dim myCBpup As CommandBarPopup
  '現在の状況を判定
  Dim vd As Validation
  Set vd = Selection.Validation
  Iflg = -1
  On Error Resume Next
    Iflg = vd.IMEMode
  On Error GoTo 0
  If Iflg = 0 Then Iflg = 3
  Set vd = Nothing
  '
  On Error Resume Next
  Set myCBpup = Application.CommandBars("PikaBar") _
          .Controls("入力設定").Controls(3)
  On Error GoTo 0
  '目玉付加
  If Not myCBpup Is Nothing Then
    For II% = 1 To 3
      With myCBpup.Controls(II%)
        If II% = Iflg Then
          .FaceId = 446
        Else
          .FaceId = 1
          .Enabled = True
        End If
      End With
    Next
  End If
  '
  With Application
    Iflg = 5
    If .MoveAfterReturn = False Then
      Iflg = 5
    Else
      Select Case .MoveAfterReturnDirection
        Case xlDown:   Iflg = 1
        Case xlToRight: Iflg = 2
        Case xlUp:    Iflg = 3
        Case xlToLeft:  Iflg = 4
        Case Else:    Iflg = 5
      End Select
    End If
  End With
  Set myCBpup = Nothing
  On Error Resume Next
  Set myCBpup = Application.CommandBars("PikaBar") _
    .Controls("入力設定").Controls(4)
  On Error GoTo 0
  '目玉付加
  If Not myCBpup Is Nothing Then
    For II% = 1 To 5
      With myCBpup.Controls(II%)
        If II% = Iflg Then
          .FaceId = 446
        Else
          .FaceId = 1
          .Enabled = True
        End If
      End With
    Next
  End If
End Sub
'処理2
Private Sub 日本語変換(arg1 As Long)
  With Selection.Validation
    On Error Resume Next
    .Delete
    On Error GoTo 0
    .Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator:=xlBetween
    'ここが分岐
    .IMEMode = arg1
  End With
End Sub
'処理3
Private Sub 移動方向(tp As Integer)
  With Application
    If tp = 5 Then
      .MoveAfterReturn = False
    Else
      .MoveAfterReturn = True
      Select Case tp
        Case 1: .MoveAfterReturnDirection = xlDown
        Case 2: .MoveAfterReturnDirection = xlToRight
        Case 3: .MoveAfterReturnDirection = xlUp
        Case 4: .MoveAfterReturnDirection = xlToLeft
      End Select
    End If
  End With
End Sub
・ツリー全体表示

【21】つづきのつづき
Excel  ぴかる  - 02/9/2(月) 21:28 -

引用なし
パスワード
   Sub 小技97マクロ()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "《 マクロ 》"
    .Text = String(45, " ")

    .Labels(1).Text = "【 マクロって? 】" & vbLf & _
             "  マクロとは、通常手動で行っている操作を自動で行うプログラムのことです。"
    .Labels(2).Text = "【 どういう時に使うと便利? 】" & vbLf & _
             "  毎日、ひとつのブックで同じ操作を行っている項目があると思います。" & vbLf & _
             "  例えば、データのクリア・印刷等です。このような操作をもっと容易に" & vbLf & _
             "  行いたいと思った方は、是非ともマクロを使うべきです。"
    .Labels(3).Text = "【 どうやって作るの? 】" & vbLf & _
             "  マクロの記録という非常に便利な機能があります。これは、実際の操作を" & vbLf & _
             "  自動的にプログラム化してくれる機能です。マクロって難しいそうと思う" & vbLf & _
             "  前にやってみましょう。"
    .Labels(4).Text = "【 マクロボタンを作ってみよう! 】" & vbLf & _
             "  それでは、シート上にボタンを設置してマクロを登録してみましょう。" & vbLf & _
             "   1.マクロ化したい操作をまとめる。" & vbLf & _
             "   2.ツールバー右の方のボタンをクリックしてシート上に設置する。" & vbLf & _
             "   3.マクロの登録にて記録をオンにする。" & vbLf & _
             "   4.実際の操作を行う。" & vbLf & _
             "   5.ツールバーのボタン2個右横の記録終了をオンにする。" & vbLf & _
             "   6.マクロボタンを押して、動作を確認する。"
    .Labels(5).Text = "【 マクロを編集するには? 】" & vbLf & _
             "  ツールバー右端のVisual Basic Editorにて編集が出来ます。" & vbLf & _
             "  詳しい内容は、書籍等を参考にして下さい。" & vbLf & _
             "" & vbLf & _
             "興味を持たれた方は、トライしてみましょう!"
    .Show
  
  End With

End Sub

Sub 小技97おまけ()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "《 おまけ 》   "
    .Text = String(40, " ")

    .Labels(1).Text = "【 折れ線グラフの数値の無い部分をつなぐには? 】" & vbLf & _
             "  データ空白部を#N/Aにすると直線でつなぐことが出来ます。"
    .Labels(2).Text = "【 オプションの表示切替機能 】" & vbLf & _
             "  [行列番号][スクロールバー ][枠線][シート名][0表示]等の" & vbLf & _
             "  表示切替が、可能です。見栄えにこだわる方にお勧めです。"
    .Labels(3).Text = "【 検索機能 】" & vbLf & _
             "  [編集]→[検索]" & vbLf & _
             "  検索したい文字入力にて同シート内での検索が可能となります。"
    .Labels(4).Text = "【 置換機能 】" & vbLf & _
             "  [編集]→[置換]" & vbLf & _
             "  変更前の文字と変更後の文字入力にて置換が可能となります。" & vbLf & _
             "   [A1→B1]  検索文字…A  置換文字…B" & vbLf & _
             "   [A_A→AA]  検索文字…_  置換文字…無" & vbLf & _
             "     ↑スペースの削除 "
    .Labels(5).Text = "【 文字列を任意位置にて分割するには 】" & vbLf & _
             "  [データ]→[区切り位置]→[スペースによって・・・]を選択。" & vbLf & _
             "  分割したい位置をマウスにて区切って実行すると分割されます。" & vbLf & _
             "  右セルは空白である事とします。 "
    .Show
  
  End With

End Sub
・ツリー全体表示

【20】つづき
Excel  ぴかる  - 02/9/2(月) 21:27 -

引用なし
パスワード
   Sub 小技97条件付き書式()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "《 条件によって書式変更するには? 》"
    .Text = String(32, " ")

    .Labels(1).Text = "【 条件付き書式を使う 】" & vbLf & _
             " ・セルの値によって、書式設定する事が出来ます。" & vbLf & _
             "" & vbLf & _
             "  例1) 100以上で赤字にする。" & vbLf & _
             "      セルの値が 100以上 赤字に設定" & vbLf & _
             "" & vbLf & _
             "  例2) A1セルが空白ならで白字にする。" & vbLf & _
             "      数式が =$A$1="""" 白字に設定" & vbLf & _
             "" & vbLf & _
             " ・条件設定は、3つまで可能です。" & vbLf & _
             "" & vbLf & _
             "非常に便利な機能です。さあ、使ってみよう!"
    .Show
  
  End With

End Sub
Sub 小技97入力規則()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "《 入力規則をうまく活用するには? 》"
    .Text = String(32, " ")

    .Labels(1).Text = "データ→入力規則の使用例紹介" & vbLf & _
             ""
    .Labels(2).Text = "【 リスト機能 】" & vbLf & _
             " ・手入力ではなくリストから簡易入力する事が出来ます。" & vbLf & _
             "" & vbLf & _
             "  例) 取引先社名をリストから入力する。" & vbLf & _
             "" & vbLf & _
             "    1. 取引先社名リストを入力シート内に作成する。" & vbLf & _
             "     (少し外れた所に1列にて作成の事!)" & vbLf & _
             "    2. データ→入力規則を選択する。" & vbLf & _
             "    3. 入力値の種類をリストにする。" & vbLf & _
             "    4. 元の値を取引先社名リストセルに合わせる。" & vbLf & _
             "    5. [OK]をクリックにて完了。"
    .Labels(3).Text = "【 整数 】" & vbLf & _
             " 数値入力固定箇所に用います。"
    .Labels(4).Text = "【 入力時メッセージ 】" & vbLf & _
             " 特定のセルに合わせた時にコメント表示が出来ます。" & vbLf & _
             "" & vbLf & _
             "非常に便利な機能です。さあ、使ってみよう!"
    .Show
  
  End With

End Sub
Sub 小技97セルの保護()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "《 セルの保護を活用するには、 》"
    .Text = String(45, " ")

    .Labels(1).Text = "【 数式部に保護をかけ、データ部のみ入力可にするには 】" & vbLf & _
             "  1.行列部左上角クリックもしくは、[Ctrl]+[A]にて全セル選択とする。" & vbLf & _
             "  2.セルの書式設定→保護→ロックのチェックを外す。" & vbLf & _
             "  3.保護をしたい部分(数式部)を選択する。。" & vbLf & _
             "  4.セルの書式設定→保護→ロックにチェックを入れる。" & vbLf & _
             "  5.ツール→保護→シートの保護を行う。" & vbLf & _
             "" & vbLf & _
             "数式の多い入力シートに使うと安心です。"
    .Show
  
  End With

End Sub
Sub 小技97データベース()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "《 データベースを活用するには 》"
    .Text = String(45, " ")

    .Labels(1).Text = "【 データベースって? 】" & vbLf & _
             "  データベースとは、最上段に各種項目があり以下下段は全てデータで" & vbLf & _
             "  構成されているものをいいます。" & vbLf & _
             "   例)在庫管理台帳" & vbLf & _
             "     品名  型式 単価  在庫数  合計" & vbLf & _
             "     ビデオ  A-1  8,000   5   40,000" & vbLf & _
             "     ビデオ  A-2  9,000   3   27,000 " & vbLf & _
             "     テレビ  B-1  20,000   7  140,000" & vbLf & _
             "     テレビ  B-2  50,000   2  100,000" & vbLf & _
             "     カメラ  C-1  30,000   3   60,000" & vbLf & _
             "     カメラ  C-2  50,000   3   15,000"
    .Labels(2).Text = "【 オートフィルタ機能 】" & vbLf & _
             "  抽出したい項目のみを表示することが出来ます。" & vbLf & _
             "   例)テレビのみ、単価10,000以上等の表示切替等" & vbLf & _
             "     オプション機能も充実しており、いろんな事が可能です。"
    .Labels(3).Text = "【 集計機能 】" & vbLf & _
             "  データベース表示に各項目の合計等を追加表示出来ます。" & vbLf & _
             "  アウトライン(行表示切替)も自動で形成されます。"
    .Labels(4).Text = "【 ピボットテーブル 】" & vbLf & _
             "  集計したい条件を配置して、各種集計(合計・平均・個数等)出来ます。" & vbLf & _
             "  非常に便利な機能です。ヘルプ・書籍等を参考にして下さい。"
    .Labels(5).Text = "【 データベース関数 】" & vbLf & _
             "  演算条件を作成し、合計・個数等を求めることが出来ます。" & vbLf & _
             "  少し難しい関数です。ヘルプ・書籍等を参考にして下さい。" & vbLf & _
             "" & vbLf & _
             "業務で集計をされている方は、是非ともこの機能を使ってみて下さい!"
    .Show
  
  End With

End Sub
・ツリー全体表示

【19】小ワザ集97
Excel  ぴかる  - 02/9/2(月) 21:27 -

引用なし
パスワード
   Sub 小技97コピー貼り付け()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "《 コピー・貼り付けをうまく活用するには 》"
    .Text = String(45, " ")

    .Labels(1).Text = "【 値の貼り付け 】" & vbLf & _
             "  数式部の数値(答え)のみを貼り付けたい時に使用します。" & vbLf & _
             "  書式を変えずに値だけを貼り付けたい時にも使用します。"
    .Labels(2).Text = "【 書式の貼り付け 】" & vbLf & _
             "  コピー部の書式(フォント・罫線等)のみの貼り付け機能です。"
    .Labels(3).Text = "【 隣接セルへのコピー(オートフィル) 】" & vbLf & _
             " [ 操作方法 ]" & vbLf & _
             "  1.コピーしたい部分を選択する。" & vbLf & _
             "  2.セルの右下にマウスを合わせ、黒十字を表示させる。" & vbLf & _
             "  3.左クリックしながら、コピー方向へ移動する。" & vbLf & _
             "  4.終了位置で、左クリックを解除する。" & vbLf & _
             "     ・左クリック … そのままコピー(文字列に数値があると数値UPします)" & vbLf & _
             "     ・右クリック … 選択してコピー"
    .Labels(4).Text = "【 数値の連続(UP)コピー 】" & vbLf & _
             "  上記2.の操作と[Ctrl]キーONにて、+ も表示させる。" & vbLf & _
             "  以降、3.4.の操作を行う。"
    .Labels(5).Text = "【 セルの移動 】" & vbLf & _
             " [ 操作方法 ]" & vbLf & _
             "  1.移動したい部分を選択する。" & vbLf & _
             "  2.セルの下にマウスを合わせ、白矢印を表示させる。" & vbLf & _
             "  3.左クリックしながら、移動させる。" & vbLf & _
             "  4.移動位置で、左クリックを解除する。" & vbLf & _
             "     ・左クリック … 移動" & vbLf & _
             "     ・右クリック … 各種選択" & vbLf & _
             "" & vbLf & _
             "非常に便利な機能です。操作時間短縮になりますよ!"
    .Show
  
  End With

End Sub
Sub 小技97文字表示()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "《 1セル内に文字列を収める方法 》"
    .Text = String(45, " ")

    .Labels(1).Text = "【 自動縮小 】" & vbLf & _
             "  セルの書式設定→配置→縮小して全体を表示にチェックを入れる。"
    .Labels(2).Text = "【 セル内で文字列を折り返す 】" & vbLf & _
             "  ・セルの書式設定→配置→折り返して全体を表示にチェックを入れる。" & vbLf & _
             "  ・任意の位置で折り返す場合は、その位置で[Alt][Enter]キーを" & vbLf & _
             "   同時に押す。"
    .Labels(3).Text = "【 適正の列幅にするには 】" & vbLf & _
             " 列表示部の右境界線にてダブルクリックを行う。" & vbLf & _
             "  (最長文字列セルに合わせた列幅となります。)"
    .Labels(4).Text = "【 文字位置 】" & vbLf & _
             " ・インテンド(左空白)を使用すると見栄えがよくなります。" & vbLf & _
             " ・数字の場合は、表示形式を数値すると右に空白が出来ます。"
    .Labels(5).Text = "【 セル内の文字列を文字別にフォント設定するには? 】" & vbLf & _
             "  左クリックでの文字範囲選択にてフォント設定が可能となります。"
    .Show
  
  End With

End Sub
Sub 小技97表示形式()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "《 表示形式をうまく活用するには? 》"
    .Text = String(40, " ")

    .Labels(1).Text = "[書式]→[セル]→[表示形式]の活用"
    .Labels(2).Text = "【 数値 】" & vbLf & _
             "  データセルを数値にするだけで、若干右に空白が出来ます。" & vbLf & _
             "  見栄えにこだわる方にお勧めです。"
    .Labels(3).Text = "【 日付 】" & vbLf & _
             "  沢山の中から、好みの形式に選択出来ます。" & vbLf & _
             "  ユーザー定義にて更に設定可能です。"
    .Labels(4).Text = "【 ユーザー定義 】" & vbLf & _
             " [曜日を付ける]" & vbLf & _
             "  aaaa-火曜日 aaa-火" & vbLf & _
             "  dddd-Tuesday ddd-Tue" & vbLf & _
             "  例) 7/31(水)と表示するには、m/d""(""aaa"")""と入力する。" & vbLf & _
             " [数値単位をつける]" & vbLf & _
             "  0""台"" 0""個"" と入力でOK。" & vbLf & _
             "  文字列の場合は、@を使用します。"
    .Show
  
  End With

End Sub
Sub 小技97シフトコントロール()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "《 [Shift][Ctrl]キーをうまく活用するには 》"
    .Text = String(45, " ")

    .Labels(1).Text = "【 範囲選択 】" & vbLf & _
             "  [ Shift ]キー" & vbLf & _
             "   まず、始点をクリックして[Shift]キーを押しながら終点をクリックするとその" & vbLf & _
             "   囲った範囲が選択されます。" & vbLf & _
             "  [ Ctrl ]キー" & vbLf & _
             "  [Ctrl]キーを押しながらをクリックしていくと、トビトビで範囲選択が行えます。" & vbLf & _
             "  [ データベース範囲の選択 ]" & vbLf & _
             "   データベースの1セルをクリックして、[Shift][Ctrl][*]キーを同時に押すと" & vbLf & _
             "   データベース範囲が選択されます。"
    .Labels(2).Text = "【 エクスプローラのファイル選択も同じ 】" & vbLf & _
             "  [Shift][Ctrl]キーで上記と同じやり方でファイル選択出来ます。" & vbLf & _
             "  ファイル名の少し右から、左クリックにてファイルを囲っても出来ます。"
    .Labels(3).Text = "【 データの各端への移動 】" & vbLf & _
             "  [Ctrl][矢印]キー同時ONにて端セルに移動します。"
    .Labels(4).Text = "【 選択範囲の同時入力 】" & vbLf & _
             "  範囲選択後、入力時[Ctrl][Enter]キーを同時ONにて可能です。" & vbLf & _
             "" & vbLf & _
             "ショートカットキーは他にも多々あります。興味のある方は調べてみて下さい。"
    .Show
  
  End With

End Sub
Sub 小技97関数()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "《 ちょっとした関数テクニック 》"
    .Text = String(45, " ")

    .Labels(1).Text = "【 ""$""をうまく使う 】" & vbLf & _
             " [""$""って(相対と絶対)?]" & vbLf & _
             "  相対…B1セル""=A1""をB2セルにコピーすると""=A2""となります。" & vbLf & _
             "      つまり、行・列に対応した参照となります。" & vbLf & _
             "  絶対…C1セル""=$A$1*B1""をC2セルにコピーすると""=$A$1*B2""となります。" & vbLf & _
             "      つまり、$を付けた部分が固定となります。" & vbLf & _
             "      左の$が列用、右の$が行用です。" & vbLf & _
             " [""$""を簡単に入力には?]" & vbLf & _
             "  (F4)を押していくと$位置が切替っていきます。" & vbLf & _
             " [まとめ]" & vbLf & _
             "  固定部分を見極めて、容易にコピー出来る形にしましょう。"
    .Labels(2).Text = "【 ""IF文""をうまく使う 】" & vbLf & _
             " [""IF文""って?]" & vbLf & _
             "  条件に対して、一致時・不一致時の処理に分ける事が出来ます。" & vbLf & _
             "  例) A1が70以上であれば○、未満であれば×は、" & vbLf & _
             "     =IF(A1>=70,""○"",""×"") となります。" & vbLf & _
             " [ エラーを回避するには ]" & vbLf & _
             "  =A1/B1という数式でB1セルが空白の場合は、#DIV/0!が発生します。" & vbLf & _
             "  あまりセンスが良いと言えないのでIF分で回避しましょう!。" & vbLf & _
             "  =IF(B1>0,A1/B1,"""") でOK。"
    .Labels(3).Text = "【 便利な関数 】" & vbLf & _
             "  ・SUMIF … 条件に一致した合計を計算。" & vbLf & _
             "  ・VLOOKUP … 条件に一致した項目を抽出。" & vbLf & _
             "  詳しくは、ヘルプ等にて。他にも多々有りますが・・・。"
    .Show
  
  End With

End Sub
・ツリー全体表示

【18】つづきのつづき
Excel  ぴかる  - 02/9/2(月) 21:25 -

引用なし
パスワード
   Sub 小技マクロ()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "{ul 1}{cf 1}《 マクロ 》{ul 0}   "
    .Text = String(45, " ")

    .Labels(1).Text = "{cf 252}【 マクロって? 】{cf 0}" & vbLf & _
             "  マクロとは、通常手動で行っている操作を自動で行うプログラムのことです。"
    .Labels(2).Text = "{cf 252}【 どういう時に使うと便利? 】{cf 0}" & vbLf & _
             "  毎日、ひとつのブックで同じ操作を行っている項目があると思います。" & vbLf & _
             "  例えば、データのクリア・印刷等です。このような操作をもっと容易に" & vbLf & _
             "  行いたいと思った方は、是非ともマクロを使うべきです。"
    .Labels(3).Text = "{cf 252}【 どうやって作るの? 】{cf 0}" & vbLf & _
             "  マクロの記録という非常に便利な機能があります。これは、実際の操作を" & vbLf & _
             "  自動的にプログラム化してくれる機能です。マクロって難しいそうと思う" & vbLf & _
             "  前にやってみましょう。"
    .Labels(4).Text = "{cf 252}【 マクロボタンを作ってみよう! 】{cf 0}" & vbLf & _
             "  それでは、シート上にボタンを設置してマクロを登録してみましょう。" & vbLf & _
             "   1.マクロ化したい操作をまとめる。" & vbLf & _
             "   2.ツールバー右の方のボタンをクリックしてシート上に設置する。" & vbLf & _
             "   3.マクロの登録にて記録をオンにする。" & vbLf & _
             "   4.実際の操作を行う。" & vbLf & _
             "   5.ツールバーのボタン2個右横の記録終了をオンにする。" & vbLf & _
             "   6.マクロボタンを押して、動作を確認する。"
    .Labels(5).Text = "{cf 252}【 マクロを編集するには? 】{cf 0}" & vbLf & _
             "  ツールバー右端のVisual Basic Editorにて編集が出来ます。" & vbLf & _
             "  詳しい内容は、書籍等を参考にして下さい。" & vbLf & _
             "" & vbLf & _
             "{cf 2}興味を持たれた方は、トライしてみましょう!"
    .Show
  
  End With

End Sub

Sub 小技おまけ()

  With Assistant.NewBalloon
    .BalloonType = msoBalloonTypeBullets
    .Icon = msoIconTip
    .Button = msoButtonSetOK
    .Heading = "{ul 1}{cf 1}《 おまけ 》{ul 0}   "
    .Text = String(40, " ")

    .Labels(1).Text = "{cf 252}【 折れ線グラフの数値の無い部分をつなぐには? 】" & vbLf & _
             "{cf 0}  データ空白部を{cf 249}#N/A{cf 0}にすると直線でつなぐことが出来ます。"
    .Labels(2).Text = "{cf 252}【 オプションの表示切替機能 】{cf 0}" & vbLf & _
             "  [行列番号][スクロールバー ][枠線][シート名][0表示]等の" & vbLf & _
             "  表示切替が、可能です。見栄えにこだわる方にお勧めです。"
    .Labels(3).Text = "{cf 252}【 検索機能 】{cf 0}" & vbLf & _
             "  [編集]→[検索]" & vbLf & _
             "  検索したい文字入力にて同シート内での検索が可能となります。"
    .Labels(4).Text = "{cf 252}【 置換機能 】{cf 0}" & vbLf & _
             "  [編集]→[置換] … 選択範囲において" & vbLf & _
             "  変更前の文字と変更後の文字入力にて置換が可能となります。" & vbLf & _
             "   [A1→B1]  検索文字…A  置換文字…B" & vbLf & _
             "   [A_A→AA]  検索文字…_  置換文字…無" & vbLf & _
             "     {cf 249}↑スペースの削除{cf 0} "
    .Labels(5).Text = "{cf 252}【 文字列を任意位置にて分割するには 】{cf 0}" & vbLf & _
             "  [データ]→[区切り位置]→[スペースによって・・・]を選択。" & vbLf & _
             "  分割したい位置をマウスにて区切って実行すると分割されます。" & vbLf & _
             "  右セルは空白である事とします。 "
    .Show
  
  End With

End Sub
・ツリー全体表示

  新規投稿 ┃ツリー表示 ┃一覧表示 ┃トピック表示 ┃検索 ┃設定 ┃ホーム  
13 / 14 ページ ←次へ | 前へ→
ページ:  ┃  記事番号:   
0
(SS)C-BOARD v3.8 is Free