• ベストアンサー

enumの書き方でエラーが出ます。

VB2008で開発しています。 enumの設定で下記のような設定をしたいのですが、 Public Enum aaaaa bbbbb = 2 ccccc = 1 Single = 0 End Enum Single = 0 の箇所でエラーが出てしまいます。 Singleのような規定名のものを定義する やり方を教えて頂けませんでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • UmJammer
  • ベストアンサー率58% (115/196)
回答No.2

手元に環境がないので確認していませんが、VB.netでは[予約語]のように[]で囲うと予約語を使用できる「らしい」です。

akanekor
質問者

お礼

出来ました。ありがとうございます。

その他の回答 (3)

回答No.4

MSDN: 宣言された要素の名前 http://msdn.microsoft.com/ja-jp/library/81ed9a62.aspx の「エスケープされた名前」にあるように,[と]で囲えば可能です。 つまり, Public Enum aaaaa  bbbbb = 2  ccccc = 1  [Single] = 0 End Enum のようになります。 なお,使う側はa.Singleのように使えます。 ただし, MSDN: 一般的な名前付け規則 http://msdn.microsoft.com/ja-jp/library/ms229045.aspx の, >広く使用されているプログラミング言語のキーワードと競合する識別子は使用しないでください。 に反するので,可能であるならば別の名前を付けることをお勧めします。

akanekor
質問者

補足

>可能であるならば別の名前を付けることをお勧めします。 元がVC++で作った元ネタソースがあるので、 変えると面倒なんですよ、、。

回答No.3

Public Enum aaaaa bbbbb = 2 ccccc = 1 [Single] = 0 End Enum ほんとだ、No2さんの言うとおりこれでエラーでなかったです。 コレは知らなかった。(でも自分では使わないとおもうけど・・・)

回答No.1

singleは予約語だから無理じゃないですかね。

関連するQ&A

  • ワードのリストを上下逆の順番にする方法

    ワードで箇条書きにした文章を、上下逆にすることはできますか?? 具体的には下記のようにしたいのですが・・・。 1.AAAAA   1.CCCCC 2.BBBBB → 2.BBBBB 3.CCCCC   3.AAAAA エクセルに移せばできるかな、と思うのですが、簡単にできる方法があればぜひ教えてください☆

  • テーブル結合のSQL文について

    はじめまして、よろしくお願いします。 テーブルA、B、Cから情報を取得し、下記のSELECTイメージを表示させたいのですが、 どのようなSQLを記述すれば良いのかわからず、困っております。 どなたかご教示頂けますでしょうか。 SELECTイメージ  日付      キー  ------------ -------------  9/1      AAAAA  9/1      CCCCC  9/2      AAAAA  9/2      CCCCC  9/3      AAAAA  9/3      BBBBB  9/3      CCCCC  9/4      AAAAA  9/4      BBBBB  9/4      CCCCC テーブルA  日付      キー  ------------- -------------  8/31      AAAAA  8/31      CCCCC テーブルB  日付      キー  ------------ -------------  9/1      AAAAA  9/3      BBBBB  9/4      CCCCC テーブルC  日付  -------------   ・   ・   ・   8/31   9/1   9/2   9/3   9/4   9/5   9/6   ・   ・   ・

  • ExcelVBAでテキスト出力で最後の行に追記

    エクセルVBAで、すでに色々と書き込まれているテキストファイルがあり 一番最後の行に追記したいです。 具体的に下記のようなテキストにzzzzzzと追記して aaaaa bbbbb ccccc ddddd 下記のようにしたいです。 どのようにしたらよいのでしょうか? aaaaa bbbbb ccccc ddddd zzzzzz

  • 3つ以上の外部結合から抽出するSQL構文

    次の3つのTABLEから期待する結果(結果を参照)を導きたいのですがJOIN等を使用しても期待と異なります。SQLを教えて下さい。結果は、SELECTでもVIEWでも構いません。一つのSQLでなくても構いません。 ●テーブル構成 テーブル名 - TB_A- -----TB_B--- ----TB_C----         ------ ------------- ------------- 列名     EMPNO EMPNO DATA1 EMPNO DATA2 レコード1   000001 000002 AAAAA 000001 AAAAA レコード2   000002 000002 BBBBB 000002 BBBBB レコード3   000003 000002 CCCCC 000003 CCCCC ●結果 列名     EMPNO DATA1 DATA2 レコード1   000001 ???????? AAAAA レコード2   000002 AAAAA BBBBB レコード3 000002 BBBBB ???????? レコード4   000002 CCCCC ???????? レコード5   000003 ???????? CCCCC

  • セルの値を転記

    下記のコードで sub main() Dim i As Long Dim rowToWrite As Long Dim 最終行 As Long Dim result As Variant Dim tmp As Variant Dim j As Long 最終行 = Range("B1").End(xlDown).Row result = Cells(1, 1).Resize(最終行, 2).Value For rowToWrite = 1 To 最終行 If tmp <> result(rowToWrite, 2) Then i = i + 1 j = 1 result(rowToWrite, 1) = i & "-" & j tmp = result(rowToWrite, 2) Else j = j + 1 result(rowToWrite, 1) = i & "-" & j End If Next rowToWrite Cells(1, 1).Resize(最終行, 2).Value = result End Sub Bセルの値が aaaaa aaaaa aaaaa bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb ccccc ccccc だった場合 ↓ Aセル,Bセル 1-1,aaaaa 1-2,aaaaa 1-3,aaaaa 2-1,bbbbb 2-2,bbbbb 2-3,bbbbb 2-4,bbbbb 2-5,bbbbb 2-6,bbbbb 3-1,ccccc 3-2,ccccc とBセルの値が 変わったタイミングで Aセルに管理番号が増えていくのですが Cells(1, 1).Resize(lastRow, 2).Value = resultの値を 表示せずに 2次元配列として resultの値を result = 結果(debug.print 結果) としてAセルの値を 1-1 1-2 1-3 2-1 2-2 2-3 2-4 2-5 2-6 3-1 3-2 と転記したいのですがアドバイスいただけたら助かります。 よろしくお願いいたします。

  • シェルスクリプトで・・・

    シェルスクリプトで・・・ 下記のファイル内にある "yy:mm:dd" 部分を "finish - start" として "aaaaaa" "bbbbbb" "cccccc" ・・・を秒単位で抽出させたいと考えています。 □ ファイル 2010-09-01 08:19:10 aaaaa : start. 2010-09-01 08:19:28 aaaaa : finish. 2010-09-01 08:19:28 bbbbb : start. 2010-09-01 08:30:07 bbbbb : finish. 2010-09-01 08:30:11 ccccc : start. 2010-09-01 08:43:45 ccccc : finish. ・・・・・・・・・・・・・・・・・(ry □ 結果のイメージはこうです。 aaaaaa 17 bbbbb 639 ccccc 814 環境は、centos5 を使っております。 どなたかご教授おねがいします。

  • ページをアクセスしてもブラウザの履歴に残さない

    今自分で作っているホームページをブラウザの履歴に 残らないようにしたいのですが、どうしたらよろしいのでしょうか? 詳しく説明しますと... 自分が作ったページ名が[BBBBB.html]とします。 例えば[AAAAA.html]→[BBBBB.html]→[CCCCC.html]とアクセスした場合、 [CCCCC.html]からブラウザの戻るボタンを押したら、[BBBBB]には飛ばず [AAAAA.html]のページが表示されるようにしたいのですが。 この質問とは逆にページを履歴に残す方法(HTMLの記述)も知っていたら 教えて下さい。 よろしくお願いします。

  • csvデータの番号付加について。

    例題の csvデータの内容が 配列1 aaaaa aaaaa aaaaa bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb ccccc ccccc だった場合、配列が1つ増え ↓ 配列1 配列2 aaaaa 00001-1 aaaaa 00001-2 aaaaa 00001-3 bbbbb 00002-1 bbbbb 00002-2 bbbbb 00002-3 bbbbb 00002-4 bbbbb 00002-5 ccccc 00003-1 ccccc 00003-2 管理番号が増えていきます。 Sub main() Dim branch As Long Dim count As Long Dim i As Long Dim tmp As Long tmp = FreeFile Dim data As Variant With CreateObject("Scripting.FileSystemObject").GetFile("C:\データ.csv").OpenAsTextStream data = Split(.readall, vbCrLf) End With branch = 1 count = 1 Open "C:\出力データ.csv" For Output As #tmp Print #tmp, data(i) & vbTab & Format(branch, "00000") & vbTab & count For i = LBound(data) + 1 To UBound(data) If data(i) = data(i - 1) Then count = count + 1 Else branch = branch + 1 count = 1 End If Print #tmp, data(i) & vbTab & Format(branch, "00000") & vbTab & count Next i Close #tmp End Sub 例えば、タブ区切りの配列が元データで5つあり 配列5番目だけを指定し、例題のようにcsvを作成したいのですが 配列の宣言はまだしておりません。 アドバイスいただけないでしょうか。 よろしくお願いいたします。 元データ 配列1 配列2 配列3 配列4 配列5 a 1 c a aaaaa a 2 c b aaaaa a 3 c c aaaaa a 4 c d bbbbb a 5 c e bbbbb a 6 c f bbbbb a 7 c g bbbbb a 8 c h bbbbb a 9 c i ccccc a 0 c j ccccc 出力データ 配列1 配列2 配列3 配列4 配列5 配列6 a 1 c a aaaaa 00001-1 a 2 c b aaaaa 00001-2 a 3 c c aaaaa 00001-3 a 4 c d bbbbb 00002-1 a 5 c e bbbbb 00002-2 a 6 c f bbbbb 00002-3 a 7 c g bbbbb 00002-4 a 8 c h bbbbb 00002-5 a 9 c i ccccc 00003-1 a 0 c j ccccc 00003-2

  • グループ化+最大値

    お世話になっております。GomiYasikiです。 以下のような場合で、フィールドAが同じ中のフィールドBが最大値のものを抽出する場合はどのようにすればよいのでしょうか? お手数ですが、宜しくお願い致します。 テーブル名:テーブルA フィールドA,フィールドB,フィールドC AAAAA,1,ABC AAAAA,2,XYZ BBBBB,1,ABC BBBBB,2,DEF CCCCC,1,AAA ↓結果 AAAAA,2,XYZ BBBBB,2,DEF CCCCC,1,AAA

  • PHPでDBからデータを抽出してHTMLで表示する

    クライアント上で表示されているHTMLのテキストボックスに入力された文字列をホストに送信し、送信した文字列をSQLの抽出条件に設定してDB(MySQL)に登録しているデータ一覧をPHPで取得後、取得したデータ一覧をクライアントのHTMLのTABLEに一覧で表示したいのですが、どのようにPHPとHTMLをプログラムすればよいでしょうか? イメージ MysSQL テーブル カラム1|カラム2|カラム3| AAAAA|BBBBB|CCCCC| BBBBB|BBBBB|CCCCC| DDDDD|BBBBB|CCCCC| HTML テキストボックス カラム1「AAAA」 検索実行↓ HTML テーブル カラム1|カラム2|カラム3| AAAAA|BBBBB|CCCCC| AAAAA|BBBBB|CCCCC| 素人染みた質問で申し訳ございませんが、ご存知の方がいらっしゃいましたら終えてください。 以上

    • ベストアンサー
    • HTML

専門家に質問してみよう