中小企業経営者また幹部の方へのITに関する本音の情報(アクセスの相談)

 ┿━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┿
    よくわかるノウハウバンク実践塾(JavaとVBA部品の紹介と勉強)
   (エクセルの初心者対象・プログラムの大革命)
http://vba.asai.net
 ┿━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━◇◆┿
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┏┓VBAをマスターして仕事を早くして給料をあげよう。儲かる会社にしよう☆
┗╋━━━━━━━━━━━━━━━━━━━━━━━━━━……………
 ┃    VBA実践塾は、VBAはプログラムを作るのではない
部品を修正して使うという考え方で実施しております。
 ☆。.:*:・’゜  ─ 部品の公開メルマガ No93─
  ……………━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ┿━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┿
   Java実践No12(電卓を作ろうの9回目)+-×÷ボタン処理
 ┿━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━◇◆┿
┌─┐
│1├───────────────────────────────┐
└┬┘★前回はよくわかるVBA実践No81請求関連(合計請求書)でした★  |
 └────────────────────────────────┘
  前回はよくわかるVBA実践No81請求関連(合計請求書)を勉強しました。
  今回はJava実践No12(電卓を作ろうの9回目)+-×÷ボタン処理の勉強です。
  今回のVBA質問内容は
  数字にカンマがついたテキストファイルをエクセルに変換するとき
  例えば大阪,”123,456″を変換すると
  大阪,123456になるところが大阪,123,456になってしまい1つ列が余分に
  作成されてしまいました。
  という質問です。
  
  文字列に大阪,”123,456″を代入して大阪,123456と変換するプログラムを
  紹介します。
  
  Sub 変換()
Dim moji As String
Dim henkan As String
Dim i As Long
Dim j As Long
Dim nagasa As Long
Dim iti(1) As Long
Dim sujim As String
Dim suji As Long
‘”付きの文字列を作る
moji = “大阪,” & “””” & 123 & “,” & 456 & “”””
MsgBox moji
nagasa = Len(moji)
‘カンマの位置を見つける
For i = 1 To nagasa
If Mid(moji, i, 1) = “””” Then
iti(j) = i
j = j + 1
End If
Next
sujim = Mid(moji, iti(0) + 1, iti(1) – iti(0) – 1)
‘カンマ付数字 (文字列)をカンマなし数字に変換
suji = CLng(sujim)
henkan = Mid(moji, 1, iti(0) – 1) & suji & Mid(moji, iti(1) + 1, nagasa – iti(1))
MsgBox henkan
End Sub
  
  このプログラムを理解するには文字をとりだすMID関数、文字の長さを取り出すLEN関数
  カンマのついた数字を数字型に変換するCLNG関数がわかっていないと理解できないと
  思います。
  あとはいつも話しているようにForとIf文だけです。
  関数は必要な時に1つづつ理解すればよいと思います。
  
  ここでの問題点はこれ以上プログラムを作らないことです。
  今回の場合はカンマ付の文字列は最大4つと限定されているのでもう少し頑張れば
  できると思いますが、違う方法を考えることです。
  
  エクセルの機能を使えばすぐにできてしまいます。
  
  VBA実践塾の対象者はエクセルがわかる人が対象ですのですべてVBAで自動化
  しなくてもファイルの変換くらいは無理をしてプログラムを作るより操作を
  すればよいと思います。
  
  それでも自動化したいという人はエクセルの機能を使うためにマクロの記録で
  作りそれを貼り付けたら可能です。
  
  今回の場合はマクロの記録で作られるTextQualifier:=xlDoubleQuoteがポイント
  です。
  
  何もわからなくてブラックボックスでも結果がでますので十分だと思います。
  
  今後cellsからRANGEで範囲を指定するような場合は文字列を上手く使わないと
  出来ない時があります。
  昔SQL文を作る時に使った方法です。&の使い方です。
  今回の場合”を文字列に追加する場合に& “””” &などをつかっているようなことです。
  
  今月から発行しました。有料メルマガ
  http://www.mag2.com/m/0001639928.html
  の2回目に文字列の作り方をのせる予定です。
  
  質問のある方またご意見のある方は自由にメールをしてください。
┌─┐
│2├───────────────────────────────┐
└┬┘★中小企業経営者また幹部の方へのITに関する本音の情報★    |
 └────────────────────────────────┘
  
  アクセスで困っているという人が来られ、業者に作ってもらっているソフト
  を見てほしいということでした。
  また業者から1000万だと言われて困っていました。
  久しぶりにアクセスにふれ、中を見ていきますと、マクロだけで作っていました。
  VBAを使わずにここまでできるものだなと感心させていただきました。
  
  明細行入力も行毎に更新クエリを作って在庫が見えるようになっています。
  明細行登録は追加クエリを行毎に作っています。
  各種印刷帳票もきれいに作られていました。
  
  お客様と業者のコミュニケーションが上手くとれていないのが原因だと
  わかりました。
  
  お客様の立場に立てばお願いして、1年もたつのに使えない。
  1)エラーが多くて使えない。
  2)印刷しないと登録できない。
  3)過去の伝票を訂正ができない。
  
  業者の立場に立てばお金をくれないのにあとから要望ばかりでてくる。
  初めに仕様を説明してくれなかった。
  というようなお話です。
  
  では私の感想を述べていきます。
  私自身ソフト開発業を26年していますのでどうしても業者の立場に立ってしまいます。
  この業者は個人でしている方です。
  
  普通商売は始めに見積金額を提示して納得すれば受注になるのですがそこが
  あいまいです。
  
  私も個人で事業を始めて開発経験が少ないとき、見積金額を出すことが難しかった
  です。
  その時は勉強と思ってお客様の出せる金額で受注してえらい目にあったことが
  ありました。
  
  今回の問題点1)エラーが多くて使えない。
  は致命的なエラーはほとんどないように見えました。少し回避すればほとんど
  解決できる問題でした。
  しかしお客さんにとってはそれがわからないと思います。

  2)印刷しないと登録できない。
  はプリンターの電源をOFFにしておいてあとからジョブをクリアすれば解決
  します。
  それを丁寧に説明すればよいと思います。
  
  3)過去の伝票を訂正ができない。
  は訂正用のプログラムを作るのが難しかったらアクセスのテーブルの訂正を
  覚えてもらったらよいと思います。
  その時訂正してはいけないテーブルとその理由をわかりやすく説明することです。
  
  私なら50万円の開発費であとは毎月3万円の指導料でお客さんに納得してもらう
  ビジネスをやります。
  
  個人事業であればこの金額で十分だと思います。
  あとは信用と口コミで広げていけばよいと思います。
  またVBAで開発する力を早くつけることとシステム設計の経験をもっと積み商品力
  を高めることだと思いました。
  
  私の提案はアクセスを勉強してもらうことです。
  
  今毎日のように私の教室に来てナガセパソコンスクールの映像教材でアクセスを
  勉強しております。
  毎日面白いと言って1000万が儲かったと言って帰って行かれます。
  
  入門・応用がすめば次は私の指導でシステムを作ってもらおうとおもっております。
  
  また結果を物語風に報告していきます。
  
  経営に役立つ情報は
  システムの戦略的内製化・経営者が自分で創れるオリジナル・システム
  http://www.seiton.jp/を参考にしてください。
┌─┐
│3├───────────────────────────────┐
└┬┘★Javaは実践No12(電卓を作ろうの9回目)+-×÷ボタン処理★  |
 └────────────────────────────────┘
  前回のJavaは実践No11(電卓を作ろうの8回目)イベント検出機能の勉強でした。
  今回はJavaは実践No12(電卓を作ろうの9回目)+-×÷ボタン処理の勉強です。
  電卓を作ろうの7回目ボタンの配置8回目イベント検出機能を使って
  +-×÷ボタンを押したとき足し算・引き算・かけ算・割り算がラベル
  に表示されるプログラムを紹介します。
  
  
  ポイント:変数btnによって条件文が使われていることを理解する

import javax.swing.*;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Dentakuf extends JFrame implements ActionListener{
public JTextField x,y;
public JButton f_plus,f_minus,f_multi,f_devide;
public JLabel labelk;
public Dentakuf(String title,int x,int y,int width,int height){
setTitle(title);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(x,y,width,height);
}
public void setObject(){
JPanel panelText=new JPanel();
JLabel label1=new JLabel(“X=”,JLabel.CENTER);
label1.setFont(new Font(“MSゴジック”,Font.PLAIN,30));
JLabel label2=new JLabel(“Y=”,JLabel.CENTER);
label2.setFont(new Font(“MSゴジック”,Font.PLAIN,30));
labelk=new JLabel(“計算の種類”,JLabel.CENTER);
labelk.setFont(new Font(“MSゴジック”,Font.PLAIN,30));
x=new JTextField(10);
y=new JTextField(10);

panelText.add(label1);
panelText.add(x);
panelText.add(label2);
panelText.add(y);

f_plus=new JButton(“+”);
f_plus.addActionListener(this);
f_minus=new JButton(“-“);
f_minus.addActionListener(this);
f_multi=new JButton(“*”);
f_multi.addActionListener(this);
f_devide=new JButton(“÷”);
f_devide.addActionListener(this);
JPanel panelBtn=new JPanel();
panelBtn.add(f_plus);
panelBtn.add(f_minus);
panelBtn.add(f_multi);
panelBtn.add(f_devide);

add(“North”,panelText);
add(“Center”,labelk);
add(“South”,panelBtn);
setVisible(true);
}
public void actionPerformed(ActionEvent e){
JButton btn=(JButton)e.getSource();
if(btn==f_plus){
labelk.setText(“足し算”);
}
else if(btn==f_minus){
labelk.setText(“引き算”);
}
else if(btn==f_multi){
labelk.setText(“かけ算”);
}
else if(btn==f_devide){
labelk.setText(“割り算”);
}
}
}
  
  次回のよくわかるVBA実践は請求関連(明細請求書)を勉強します。
  次回のJavaは実践No13(電卓を作ろうの10回目計算式)を勉強します。
┌─┐
│4├───────────────────────────────┐
└┬┘★ 習うより慣れろ                      |
| 練習問題・実践をすることです ★     |
 └────────────────────────────────┘
  VBA実践のメルマガの永い読者はまた同じことかと思われるかもしれませんが
  基本は同じですのでそれを何度も少し変わった面から作ることが本当の
  力になってくるのです。
  わかったと思って訓練をしないと実践力がつきません。
  キャリアアップをめざして頑張ってください。
┌─┐
│5├───────────────────────────────┐
└┬┘★10月のVBA&Java実践無料セミナーは             |
| 10月 4日(土)19日(日) 10:00~12:00            |
| テーマ:転職に有利なプログラム言語のJavaとキャリアアップに |
|  最適なExcelVBAを実践に基づいてわかりやすく紹介するセミナー★|
 └────────────────────────────────┘
┌─┐
│6├───────────────────────────────┐
└┬┘★10月のVBA実践有料セミナーは                |
| 10月 4日(土) 5日(日)11日(土)12日(日)19日(日)26日(日)    |
|    9:00~17:00 内容:VBA実践基礎       |
|    受講費用 ¥20,000(税抜・教材費込)     |
 └────────────────────────────────┘
┌─┐
│7├───────────────────────────────┐
└┬┘★ VBA実践塾の第1号「よくわかるVBA実践」CD版     |
| 発売中(価格5,000円)                |
| ご購入希望者はyahooショッピングにて販売中★          |
http://store.shopping.yahoo.co.jp/vba/★            |
 └────────────────────────────────┘
┌─┐
│8├───────────────────────────────┐
└┬┘★ 現金主義会計ソフトCD版                 |
| を発売しました(販売価格2,500円)         |
| ご購入希望者はamazonにて販売中)★            |
|http://www.amazon.co.jp/(現金主義会計ソフトで検索してください)|
|簿記は難しい。しかし税務申告はこの簿記の考え方を採用しています。|
|この会計は、最小の努力で税務申告も可能な決算書が完成できるように|
|工夫しました。指示に従って初歩の簿記知識もマスターしましょう。 |
 └────────────────────────────────┘

 ──────────────────────────────────
  次のOdysseyのサイトに漫画でVBAを説明していますので参考にしてください
  http://vbae.odyssey-com.co.jp/column/

 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 □■セミナー場所・お問い合わせ先
大阪市阿倍野区阿倍野筋3-12-2-111
ナガセキャリアプラザ アベノ校
VBA実践塾 塾長 浅井良一
http://vba.asai.net
ryoichi@asai.net
電話0120-555-309

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中