No.4ベストアンサー
- 回答日時:
だいたいお話は出ているようですが、位置関係が逆です。
VBAが書けても、VBS は書けません。ちょっとした実験コードはともかく、実際には思ったようには書けません。VBSとは、Visual Basic Script のことです。WSHは、このVBScript と、JavaScriptを合わせたもので、表現力は、JavaScriptのほうが上かもしれません。HTMLと組み合わせ、単独のアプリケーションも作成することが可能です。VBAは、MS-Officeに備え付けられたもので、VBEditor 上でコーディングするものですが、自動的にスペルチェックや構文チェックするので、とっても便利です。そこにいくと、VBSciptは、自動メンバーの出るようなエディタは少ないし、構文自動チェックしてくれるわけではありません。それに、タイプライブラリの呼び出しも簡単には出来ません。
Micorosoft の「Hey, Scripting Guy!」(参照URL)を読んでみるとよいですね。
一番下の 2006/1 からです。最初に、「テキスト ファイルのすべての空白行を削除する方法はありますか?」というスタートからでは、VBSは手が出ない人も多いと思います。Win XPになって、VBScript のステータスが変わりました。WMI(Microsoft Windows Management Instrumentation)が入ってきたからです。
もっと基礎からなら、「Windows Script Host Laboratory」の牟田口さんのサイトを見てみるとよいです。http://www.roy.hi-ho.ne.jp/mutaguchi/wsh/
そもそも、MSの中でもこのScripting の方向性というのは、独自路線のようですね。これが、Vista で使い勝手が悪くなってしまい、暗号化が利かなくなってしまいました。その代わり、PowerShell が登場しました。かと思えば、子ども向けというSmaill Basicも登場しましたが、これが大化けするかもしれません。いずれにしても、一般の人は手が出ません。
だから、VBAで基礎力を付けてからですね。
参考URL:http://technet.microsoft.com/ja-jp/scriptcenter/ …
No.3
- 回答日時:
VBAとは、VBAと一般に言うよりは、ExcelVBAのように、
Officeのアプリの名を前につけて言うべきものです。
ExcelVBAとは別にOUTLOOKVBAほかアプリごとに数個あります。
ExcelVBAについて言えば、Excelの関係の処理に特化して、
その処理をプログラムのコードを書き、実行で行えるよう、Excelの操作や設定を
コード(それもVB6の仕様)で記述し実行できるよう、メソッド・プロパティ
・その他などが多数設けられています。
VBSはファイルの処理などを中心として、Excelを使う場合に限らない
内容が主です。
VBSにある正規表現、ディクショナリはファイル処理からすると特殊です。
VBSのメソッドはExcelVBAの中でも使うことが出来るものも多く、
VBSからExcelVBAの世界の処理にも入れます。
似たような処理が出来るものが両者にあるものもあります。VBSとDOSコマンド
由来のExcelでのVBAの関数など。
文法の演算子・制御構文と関数的なものはVBSとVBAでVB6由来ほぼで共通です。
違いは処理の対象とする分野(目的・内容)・操作の違いです。
ーー
この質問のような、総論的な質問をここにする前に、VBSの本でも読んで
(やGoogleなどでVBSでWEB照会して)勉強しましょう。
記述内容もそちらの方が圧倒的に詳しいです。
VBScriptポケットリファレンス(技術評論社)
http://www.whitire.com/vbs/
ほか
そしてこのコーナーでは、もっと具体的な問題に至ったとき、その質問を
しましょう。
この質問コーナーは、本にはズバリ書いてない内容の、そういう場合に生きてくるはずです。
No.2
- 回答日時:
VBAは、ベースになるアプリケーション(excel/word等)に関連する命令が拡張されています。
エクセルの場合だと、セルやワークシート・ブックに関連する部分が拡張強化された命令が追加されています。
VBSはVBの基本機能を残しただけと思えば良いかも。
いずれもexeファイルを作成する機能はありません。
No.1
- 回答日時:
VBS というのは VBScript のことでしょうか?
VBS が VBScript として回答します。
VBA は、Visual Basic for Applications といって、MS Office で使用できる VB (Visual Basic) 言語です。
VBScript は、VB のサブセットのスクリプト言語で、MS Office に限らず、Windows のバッチファイルや IIS で動作するリッチクライアントを実装するための言語 (JavaScript と同じような感じ) です。
通常のプログラミング言語とスクリプト言語の違いがわかると、まさにその違いなのですが、誤解を恐れずに掻い摘むと、VBA は MS Office 専用のプログラミング言語で、VBScript は MS Office 以外でも使用できる簡易プログラミング言語 (スクリプト言語) です。
ご質問で Excel の勉強ということでしたが、たいていのことは Excel で用意されている関数を利用することで実現できます。
よほど凝ったことをマクロとして組む必要があるときに VBA を使用します。
が、マクロで書かれているものの大半は Excel の関数で実現できるもので、関数の使い方を知らないために、VBA を使用しているケースが大半です。
もし、よかったらまずは Excel の関数を勉強されることをオススメします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
vba textboxへの入力について教...
-
Vba セルの4辺について罫線が有...
-
vbsでのwebフォームへの入力制限?
-
Vba FileSystemObject オブジェ...
-
複数のExcelファイルをマージす...
-
【マクロ】並び替えの範囲が、...
-
エクセルのVBAコードと数式につ...
-
【マクロ】値を渡されたプロシ...
-
VBAでユーザーフォームを指定回...
-
【ExcelVBA】5万行以上のデー...
-
VBAでセルの書式を変えずに文字...
-
Web画面の文字をVB6で取得したい
-
VBAでCOPYを繰り返すと、処理が...
-
VBA ユーザーフォーム ボタンク...
-
Vba Array関数について教えてく...
-
【マクロ】シートの変数へ入れ...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
【マクロ】開いているブックの...
-
エクセルのマクロについて教え...
-
エクセルの改行について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラム言語FortranとCの違...
-
arduino
-
CPU、Z80からステート数から...
-
組み込みCプログラムで実数型
-
パイプライン制御について
-
なぜ、i++なのか?(ものすごく...
-
PICマイコンのプログラムについ...
-
アセンブリ言語で。
-
G4 って Pentium でいうとどの...
-
CPUって
-
MIPS アセンブリ言語
-
64ビット化による処理速度低下...
-
マイコンのビット数とクロック数
-
関数と命令の違いについて
-
H8Sで割り込み発生時の飛び先ア...
-
VBSとVBA
-
+=と÷=の処理速度の謎を教え...
-
スマートフォンAndoroid の R...
-
任天堂64の64 CPUの仕...
-
CPUのHTについて教えてください。
おすすめ情報