自立学習×個別指導

NextStage

学習塾 ネクストステージ

埼玉県川越市大字砂935-6

新河岸駅下車徒歩2分

電話 049-265-8994

FAX 049-265-8640

2015/09/17

中学受験【算数の偏差値を40から50に上げる方法】

中学受験では一生懸命勉強してもなかなか偏差値50を超えられない・・・という方が多いです。

 

偏差値50は平均を表しており、おおまかに言ってしまえば、中学受験生の半分ぐらいが偏差値50に届いていないわけです。

 

高校受験とは違い、中学受験では保護者がかなりの労力をかけて学習をサポートしていますから、その中で上位50%に入るのは大変です。

 

「親子で一生懸命がんばっているのに・・・」とお困りの方へ。

 

ここからは私の実際の経験です。

 

今年の夏も偏差値の大幅アップに成功しています。

 

参考にしてください。

 

【結論】一行問題の完成度を上げる

 

これに尽きます。

 

複雑な問題を解くのは、一行問題が解けてからです。

 

大問の練習なんていりません。

 

すべて一行問題に全力をかけます。

 

そしてここがポイントですが、

 

解けるまで何度も繰り返し解き直します。

 

できれば、1・2週間おいて解きなおしです。

 

そうすることによって初めて、定着します。

 

「一度教えればできるようになる」・・・中学受験では通用しません。

 

私は、3回教えて解けるようになればOK、と思って教えています。
(1回で理解させなければ時間のムダです。)

 

ちなみに私も使用させていただいていますが、すぐる学習会の基礎500は、すばらしい教材です。

 

教材で悩んでいるヒマがあれば、基礎500を完璧にすると良いでしょう。

 

最後に・・・やるからには徹底して取り組まなければ、効果は薄れます。

 

一行問題を完璧する、他のことはそれから、という覚悟を持って取り組みましょう。

 

ただそれだけで、偏差値50の壁はあっさり越えられます。

 

とはいえ、学習管理はなかなか大変なものです。

 

学習塾NextStageに丸投げするのが一番簡単な方法です。

2015/11/17

【VBAヒント集】GoTo ステートメント

if文やloop文,dowhile文などは、マクロの勉強をし始めるとどのテキストやwebページでも真っ先に紹介されています。

 

一方で、go to文はほとんど紹介されていないことが多いです。

 

どうも、構造化プログラミングという論点から推奨されていないのが原因です。
プログラムがごちゃごちゃするから使うのをよそう!ということです。

 

確かに、商品化するような複雑なプログラムや、頻繁に修正が必要なプログラムならその通りです。

 

しかし、ちょっとしたマクロを書くだけなら、go to文は便利です。

 

下の2つのコードを使うだけです。
① Go To 行き先
② 行き先:

 

これで①のコードから②のコードまでジャンプすることができます。

 

例①条件分岐に使う
——————————————-
Sub goto1()
buf = MsgBox(“私のこと好きですか。”, vbYesNo)
If buf = vbNo Then
GoTo baibai
End If
MsgBox “ありがとうございます。”
baibai:
MsgBox “じゃあね”
End Sub
——————————————-
『好きですか』という問いに、Noと答えると『ありがとうございます。』を飛ばして、『じゃあね』に行くようになっています。if文だけでもできますが、条件が重なったときには使いやすいのではないでしょうか。

 

例②繰り返しの文として使う
——————————————-
Sub goto1()
retry:
buf = MsgBox(“私のこと好きですか。”, vbYesNo)
If buf = vbNo Then
MsgBox “私はあなたのことが大好きです。”
GoTo retry:
End If
MsgBox “ありがとうございます。”
End Sub
——————————————-
行き先をGoToの前に入れておくと、戻ることができます。『好きですか』という問いに、Noと答えるともどって再度同じ質問をします。Yesと答えない限り永遠と続きます。

 

GoTO文は使い勝手がよいので、条件分岐に困ったら頼ると良いでしょう。

 

一方で、他の条件分岐の方法もしっかり学習をした方が、幅が広がります。

2015/11/08

【EXCEL VBA】分数を扱う-セルの値自動取得-

EXCELと分数の相性の悪さ…もともとEXCELは『データテーブル』+『手軽なビュー』というのが持ち味ですので、いわゆる学校で使われている分数の形式で表示する必要性はあまりないわけです。

 

私のようにプリントの教材をEXCELで作っている人は、分数の表示をどうしようと悩まれたことがあると思います。

 

今回、新しいプリントを作るにあたり分数の数値をセルから自動取得するマクロを作成しました。

 

分数といってもテキストボックス2つと直線をあわせたものです。
マクロで、分数の線や、中心位置を自動調整するようにしました。

 

また、複数の分数をサクサク扱えるように、設定用のプロシージャと、自動調整用のプロシージャを別にしました。

 

使ってみて、作業効率は数式エディタと同じくらいではないでしょうか。

 

自動で数値替えを行いたい人にはお勧めです。

 

①シート上の準備
1 シート上に、テキストボックス2つ(分母・分子)と直線を用意
2 図形の名前を変更(ホーム⇒検索と選択⇒オブジェクトの選択と表示 で打ちかえる)
図形の名前は下図を参考にしてください。『名前+通し番号』です。
※この時点でフォントを設定しておいてかまいません。

 

689e15_94c2ed2c426f4e3ca26c4bb3b7ad7c1e

 

②マクロを書く
‘—————グローバル変数として宣言———————–
Dim buf, mytarget, mytarget1, mytarget2, mytarget3, myvalue, myvalue1

 

‘—————参照元設定用のマクロ———————–
Sub 分数()
Calculate
buf = 1’—通し番号
myvalue = “BA2” ‘—分子
myvalue1 = “BB2” ‘—分母
Run “分数作成”
End Sub

 

‘—————自動調整用マクロ———————–
Sub 分数作成()
mytarget = “分子” & buf ‘—分子の数値が入ったテキストボックス
mytarget1 = “分母” & buf ‘—分母の数値が入ったテキストボックス
mytarget2 = “分数” & buf ‘—分数の線
mytarget3 = “分数化” & buf ‘—グループ名
デフォルトtop = ActiveSheet.Shapes(mytarget3).Top ‘—もとの上端
デフォルトleft = ActiveSheet.Shapes(mytarget3).Left ‘—もとの左端
leftblank = 7 ‘—テキストボックスの文字が入る左端の空白を調整
mypoint = 5 ‘—文字のポイント数により調整

 

‘—すでに入力されている分母と分子の文字の長さのうち長い方を取得
ActiveSheet.Shapes(mytarget).Select
文字0 = Len(Selection.Characters.Text)
ActiveSheet.Shapes(mytarget1).Select
If Len(Selection.Characters.Text) > 文字0 Then
文字0 = Len(Selection.Characters.Text)
End If

 

‘—分母と分子に数値を入力
ActiveSheet.Shapes(mytarget).Select
Selection.Characters.Text = Range(myvalue)
ActiveSheet.Shapes(mytarget1).Select
Selection.Characters.Text = Range(myvalue1)
myleft = ActiveSheet.Shapes(mytarget2).Left

 

‘—入力した分母と分子の文字の長さのうち長い方を取得
文字 = Len(Range(myvalue))
If Len(Range(myvalue1)) > 文字 Then
文字 = Len(Range(myvalue1))
End If

 

‘—場所と長さを調節
ActiveSheet.Shapes(mytarget).Left = myleft – leftblank + (文字 – Len(Range(myvalue))) * mypoint / 2
ActiveSheet.Shapes(mytarget1).Left = myleft – leftblank + (文字 – Len(Range(myvalue1))) * mypoint / 2
ActiveSheet.Shapes(mytarget2).Width = mypoint / 2 + mypoint * 文字
ActiveSheet.Shapes(mytarget2).Left = myleft – mypoint / 4
ActiveSheet.Shapes(mytarget3).Top = デフォルトtop
ActiveSheet.Shapes(mytarget3).Left = デフォルトleft – mypoint / 2 * (文字 – 文字0)
End Sub

 

※自動調整用のleftblank mypointの数値は適当に調節してください。使用しているフォントの種類や大きさによって変わります。

 

③複数用意するときは、
オートシェイプのコピー ⇒ 名前の変更 ⇒ 設定用マクロに入力 するだけ

 

実用的な範囲で見栄えの良い分数が操作できる(はず?)です。

2015/12/11

【EXCEL_VBA】最短講座⑥ データや数式の入力

EXCELの自動化を実現するVBAマクロを、「とりあえず使ってみたい」という人のために、最短で説明する講座です。(Excel2010で説明します。)
前回はセルのデータを自動選択することを学習しました。
 
今回は、「データや数式の入力」を学んでみましょう。
①インプットボックスを使ったセルへの入力


マクロを使ってやりたいことNo.1といっても良いのではないでしょうか。
しかし、InputBox関数の使い方は引数(設定できること)が多いために、わかりづらいところもあります。
今回は、入力だけの設定でできる便利な使い方をみていきましょう。
 
1.ただ入力するだけ
—————————-
Sub 入力()
Dim mydate
mydate = InputBox(“入力してください。”)
Range(“A1”) = mydate
End Sub
—————————-
【説明】mydateという変数を用意して、インプットボックスに入力されたデータを格納⇒A1セルにそのデータを入力する。
 
2.キャンセルのときの設定を追加する。
—————————-
Sub 入力()
Dim mydate
mydate = InputBox(“入力してください。”)
 
If mydate = “” Then
MsgBox (“入力を取り消します。”)
Else
Range(“A1”) = mydate
End If
End Sub
—————————-
【説明】インプットボックスでキャンセルボタンを押されたときは、何も入力されていないのと同じ状態になりますので、mydate=””で判断します。今回はif関数を使い分岐しました。(インプットボックスにキャンセルボタンを押した!という判断はありません。)
 
3.次々に入力する。
—————————–
Sub 入力()
Dim i
i = Application.WorksheetFunction.CountA(Range(“A:A”))
i = i + 1
 
Dim mydate
mydate = InputBox(“入力してください。”)
 
Do While mydate <> “”
Cells(i, 1) = mydate
i = i + 1
mydate = InputBox(“入力してください。”)
Loop
 
End Sub
—————————–
【説明】A列につぎつぎにデータを入力する設定です。i = Application.WorksheetFunction.CountA(Range(“A:A”))ですでに入力されている個数をしらべてその続きから入力します。今回はキャンセルボタンを押すか、何も入力せずにOKボタンを押すと止まるようにループさせました。
 
ということで、インプットボックスは最低限の設定だけでも便利です。その他にも、タイトルをつけたり、表示する位置を指定したり、といろいろな機能が備わっています。1つずつ項目を付け足して試してみるとおもしろいですよ。
 
 
 

②セルに数式を入力する。


なるべく自動的に集計できるようにするために、セルに数式をマクロで入力したい、ということがあります。
どうやって入力すれば良いのか、悩むことがあると思いますが・・・数式の扱いは簡単です。

 

たとえば、Range(“A1”) = “=sum(B:B)” のように、文字列と同じように数式を入力してあげればよいのです。今回は=sum(B:B)という数式を入れましたので、B列のすべての和が求まります。
(これは、=から始まる文字列は数式だ!というExcelの自動認識を利用しています。)

 

しかし、数式の入力で気をつけなければならないことが1つあります。
数式自体に文字列を入力するときです。

 

たとえば、=COUNTIF(B:B,”川越”) という数式を入力するときに、
Range(“A1”) = “=COUNTIF(B:B,”川越”)” とするとエラーになります。

 

プログラムの受け取り手のコンピューターが、【“=COUNTIF(B:B,”】という文字列と【川越】という得たいの知れないものと【”)”】という文字列と認識するためです。

 

数式の中の文字列は”川越”ではなく、””川越””にします。”を2つ使って挟むことで上手く認識させるのです。
Range(“A1”) = “=COUNTIF(B:B,””川越””)” が正解です。入力されたあとの数式は =COUNTIF(B:B,”川越”) になります。

 

今回はデータの入力で困りやすいインプットボックスと数式を扱いました。

 
 
次回は、自作のフォームを利用した入力について、学んでいきます。
 
 

┿━━━━━━━━━━━━━━┿
— 学習塾NextStage ( ネクストステージ )–
┿━━━━━━━━━━━━━━┿
■営業時間 平日13:00~21:30
土曜10:00~21:30
日曜 不定期
■住所:川越市大字砂935-6
■電話:049-265-8994            
2016/01/05

合格_待ち受け 縦・大

最後まで努力しろ!

tate_960×1280

 

 

学習塾NextStage ( ネクストステージ )
■営業時間
平日13:00~21:30
土曜10:00~21:30
日曜 不定期
■住所
埼玉県川越市大字砂935-6
■電話
049-265-8994            

学ぶのが楽しくなり積極的に勉強する子が育つ学習塾のお役立ちブログです

新河岸にあるNextStageは、勉強させる、教えるという方針ではなく、生徒一人一人が自らの意思で積極的に学ぶことができる環境を整えております。自分の弱点や苦手分野を把握して生徒をサポートするパソコンとともに、理解できる楽しさを噛みしめながら前へと進んでいき、成績アップへとつなげていけます。
自ら学ぶ力がつく学習塾NextStageのブログでは、ご自宅からも簡単にアクセスして学べる家庭学習支援ツールの配信や、中学受験や高校受験などに役立つ情報やアドバイスを掲載しております。
塾だけでは物足りず、もっと勉強したいときや、受験勉強でつまずいたとき、不安になってしまったときに、新河岸のNextStageのブログをご覧ください。

→TOPに戻る