コンピュータ名を取得したいのですが、
モジュールの書き方がわかりません。
すみませんが教えて下さい。
お願いします。

A 回答 (1件)

WindowsAPI関数を使用します。



↓ 一行で書いてください。
コードモジュールの「General」-「Declarations」に
Private Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long

次にイベントを発生させたい個所に
(例)ボタンクリック時なら Sub MyButton_Click()

Dim ret As Long
Dim cpName As String * 1024

ret = GetComputerName(cpName, 1024)

MsgBox Trim(cpName)


で画面にコンピュータ名が表示されると思います。
    • good
    • 0
この回答へのお礼

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

お礼日時:2002/02/22 10:41

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qミッドウエー海戦、最年少戦死者は15歳の少年4名だそうですが、

ミッドウエー海戦、最年少戦死者は15歳の少年4名だそうですが、
乗艦名(できれば4名の名前も)を教えてください。
よろしくお願いします。

城山三郎氏の対談集『気骨について』(新潮社)で知りました。

Aベストアンサー

『記録 ミッドウェー海戦』澤地久枝著、文藝春秋、昭和61年6月発行によれば、赤城1名、蒼龍2名、三隈1名となっています。名前などは図書館にはあるでしょうから自分で調べてください。以上

Qブック名、シート名を他のモジュールからも参照可能にする方法

マクロを書く場合に次のように宣言しています。

Sub test()
'(1)始まり
Dim WB1 As Workbook
Dim SH1 As Worksheet
Set Wb1 = Workbooks("Book1")
Set Sh1 = Wb1.Worksheets("Sheet1")
'(1)終わり

Msgbox Sh1.Cells(1, 1)
end Sub

新たにマクロを書く場合には、その都度上記コードの「'(1)始まり~'(1)終わり」を書いていますが、面倒です。
「Public ~」などのように一箇所に宣言しておけば,他のモジュールからもブックやシートを参照できるようにする方法は無いでしょうか?

よろしくお願いします。

Aベストアンサー

Test1 が実行された後なら Test2 も Test3 も下記で動くけど、、、
そういう事ではない?

'Module1-------------------------------
Public wb As Workbook
Public ws As Worksheet
Sub Test1()
  Set wb = ThisWorkbook
  Set ws = wb.Worksheets(1)
End Sub
'--------------------------------------

'Module2-------------------------------
Sub Test2()
  MsgBox ws.Cells(1, 1).Value
End Sub
'--------------------------------------

'Module3-------------------------------
Sub Test3()
  MsgBox ws.Cells(1, 1).Value
End Sub
'--------------------------------------

Test1 が実行された後なら Test2 も Test3 も下記で動くけど、、、
そういう事ではない?

'Module1-------------------------------
Public wb As Workbook
Public ws As Worksheet
Sub Test1()
  Set wb = ThisWorkbook
  Set ws = wb.Worksheets(1)
End Sub
'--------------------------------------

'Module2-------------------------------
Sub Test2()
  MsgBox ws.Cells(1, 1).Value
End Sub
'--------------------------------------

'Module3-------------------------------...続きを読む

Q復興支援マッチ 日本~台湾戦 BGM曲名

いま放送中の台湾戦で19:01ごろにかかった曲名を教えてください。
相方は、かなり古い曲だと申しています。
聞いた事があるけれど、曲名がどうしても思い出せないそうです。
いい感じの、ロックでした。よろしくお願いします。

Aベストアンサー

19:01は観てなかったのですが、今流れていたのはジャーニーのセパレート・ウェイズ です。

QACCESS97 のモジュールの中 何番目かの データを取得したい

ACCESS97 のモジュールの中で SQLを使用しています。

SQLを使用して あるテーブルの任意のレコードを選択したいのです。
例えば テーブルAが下記のようにあるとします。
項目名前番号
A001
B003
D004

という場合に名前Bの番号003を取得したいのです。
データとしては、"2"番目の2 は取得可能です。
 (フォーム上のテキストBOXで入力)

Set DATABASE = CurrentDb()
strSQL = "SELECT * FROM テーブルA WHERE "
strSQL = strSQL + "**** = '" & **** & "' ;"    
↑ここに条件をどのように持てばいいのでしょうか?

※ ここで、名前の項目ではキーとなる項目は得られません。
  今回は 何番目のデータを取得したい ということが可能かどうか 
  教えて頂きたいと思います。

Aベストアンサー

こんにちは

ベタベタな方法でよろしければ。。。ですが
あと名前が昇順に並んでいる2番目が欲しい
というのが前提です。

strSQL = "SELECT * FROM テーブルA "
strSQL = strSQL & " ORDER by 名前 "
として、レコードセットオープン
i=1
do until レコードセット.eof=true
if i= テキストBOX then 'フォーム上で2と入力
w_番号=レコードセット!番号
exit do 
end if
レコードセット.movenext
i=i+1
loop

とすれば、簡単にとれますが、ダメですかね~。

Q代表戦などの選手入場の時に流れる曲の曲名は?

代表戦などのおそらくFIFA主催の試合でだと思いますが、
あの選手入場のときに流れる曲の曲名はなんと言うのでしょうか。
この曲に関することが書いてあるホームページでも結構です。
よろしくお願いします。

Aベストアンサー

「FIFA ANTHEM」という曲らしいです。正式にはJASRACによると「FIFA HYMNE~ANTHEM」で、「FIFA ANTHEM」は副題というか通称なのかな。FIFA公認テーマソングで、作曲はFRANZ LAMBERTという人です。CDは出ていないみたいですね。

Q端末名の取得

Access97を使っています。モジュールの中で、
またクエリーの中で、誰が(どのPCから)
データを登録したのか、
自動で取得したいのです。
関数など探したのですがわかりませんでした。
みなさん、どうしてますか?
 

Aベストアンサー

APIを定義してネットワークログインユーザ名を取得すれば良いのでは。
Public FunctionでGetLoginNameとして取得しておいてレコードの登録時にテーブルに書き込むフィールドを作っておいてそこにGetLoginNameの値をレコードと一緒に書き込めば取りあえず「誰が」が判断できると思うのですが。

Q浦和開幕戦で使われていた洋楽の曲名

ちょっと、カテ違いかもしれませんが…。
昨日の、Jリーグ開幕戦で埼玉スタジアム内に流れていた洋楽の曲名を知りたいのです。

だいたい、選手が練習を始めたぐらいに2,3曲洋楽が流れたと思うんですが、もし分かる方がいたら教えて頂けますでしょうか?
宜しくお願いします。

Aベストアンサー

音楽が流れている時に選手のコメントを読んでいた朝井夏海さんの事務所のホームページで詳しく調べることが出来ます。
もし、いつも流れている曲と違う曲ならば掲示板で質問してみてください。

また、このページから一部の曲を視聴&購入も出来ます。http://www.komura.com/urawa/music/

参考URL:http://homepage2.nifty.com/my-s/mainmenu.htm

Qタグ名取得でエラー

エクセル2003VBAで以下のコードを実行するとBrowser1がエラーとなります。
どなたか解決法がわからないでしょうか。
よろしくお願いします。

\'IEのウィンドウハンドルを取得
Dim hwnd As Long
hwnd = FindWindow(\"IEFrame\", vbNullString)

\'ウィンドウを前面に表示する
If hwnd = 0 Then
MsgBox \"IEが起動していません\"
Exit Sub
End If
SetForegroundWindow hwnd


Dim Browser1 As Object
Dim elm As Object
Dim i As Integer
Const READYSTATE_COMPLETE As Long = 4

\'次の画面が表示されるまで待機
While Browser1.ReadyState <> READYSTATE_COMPLETE
While Browser1.Busy = True
DoEvents
Wend
Wend



Set elm = Browser1.document.getElementsByTagName(\"INPUT\")
For i = 0 To elm.Length - 1
If (elm(i).Name = \"q\") Then elm(i).Focus: Exit For
Next i

エクセル2003VBAで以下のコードを実行するとBrowser1がエラーとなります。
どなたか解決法がわからないでしょうか。
よろしくお願いします。

\'IEのウィンドウハンドルを取得
Dim hwnd As Long
hwnd = FindWindow(\"IEFrame\", vbNullString)

\'ウィンドウを前面に表示する
If hwnd = 0 Then
MsgBox \"IEが起動していません\"
Exit Sub
End If
SetForegroundWindow hwnd


Dim Browser1 As Object
Dim elm As Object
Dim i As Integer
Const RE...続きを読む

Aベストアンサー

ちょっと調べてましたが、自力で探すしかないようです

http://www.ne.jp/asahi/hishidama/home/tech/excel/browser.html
の”既存のIEを探す方法”にサンプルソースとプロパティが載ってます

>このコードを追記してしまうと、ウィンドウが新しく開いてしまいますので、使いたくないのですが。上記のコードでは暴走するのですか。。。
なるほど。
暴走に見えたのですが、IEの起動待ちだったかもしれません
(でも、5分間無反応でした)

参考URL:http://www.ne.jp/asahi/hishidama/home/tech/excel/browser.html

Q日本代表戦のときに流れる曲名がわかりません

日本代表戦の時に流れる曲を探しています。
外国人が歌っているのはTVで見たことはあるのですが、曲名や歌手がわかりません。
どなたかわかる方いませんか?

○W杯予選でも流れている曲です。
○番組のサッカーコーナーになると、流れる曲です。
 (川平さんの時に良く流れるかも)
○もしかしたら、CM(マークX)で流れてるのは同じ曲か も。

Aベストアンサー

サラブライトマン
ア・クエスチョン・オブ・オナー
だと思います
以下URLで試聴できます

参考URL:http://www.toshiba-emi.co.jp/sarah-brightman/disco/tocp40151.htm

QVBAで集計元のファイル名を取得する

フォルダの中に、あるアンケートに対する回答のエクセルファイルがあり(名前はバラバラ)、別の場所にその回答を一覧に並べるための"集計用ファイル"がります。このアンケートの回答ファイルは日々数が追加されて行くので、毎日"集計用ファイル"に回答を得た分を転記し日付の名前でもつけて保存して行きたいのです。エクセルマクロを使用して、回答ファイルの特定の部分に入力された内容を一人一列となるように"集計用ファイル"へ転記します。こちらで教えて頂いたりネットや本を見て下記までは理解しました。

■質問
各行の先頭に転記元のファイル名も記入するにはどの様な記述が必要かおしえてください。いろいろ試したのですが、力量不足でエラーもしくは全く反映されないものしか出来ませんでした。

よろしくお願い致します。

=============================================
Sub 転記2()

Dim WorkPath As String
Dim Target As String
Dim MaxRow As Long

Application.ScreenUpdating = False

WorkPath = "C:\Documents and Settings\Zawa\デスクトップ\Test"
Target = Dir(WorkPath & "\*.xls", vbNormal)
MaxRow = 1

Do While Target <> ""
Workbooks.Open WorkPath & "\" & Target

Workbooks(Target).Sheets("Sheet1").Rows("1:1").Copy _
ThisWorkbook.Sheets("Sheet1").Cells(MaxRow, 1)
MaxRow = MaxRow + 1

Workbooks(Target).Close SaveChanges:=False
Target = Dir()
Loop

MsgBox "転記が終了しました。"
End Sub

フォルダの中に、あるアンケートに対する回答のエクセルファイルがあり(名前はバラバラ)、別の場所にその回答を一覧に並べるための"集計用ファイル"がります。このアンケートの回答ファイルは日々数が追加されて行くので、毎日"集計用ファイル"に回答を得た分を転記し日付の名前でもつけて保存して行きたいのです。エクセルマクロを使用して、回答ファイルの特定の部分に入力された内容を一人一列となるように"集計用ファイル"へ転記します。こちらで教えて頂いたりネットや本を見て下記までは理解しました。

■...続きを読む

Aベストアンサー

おはようございます。merlionXXです。
前回の続きのようですね。

Workbooks(Target).Sheets("Sheet1").Rows("1:1").Copyと、1行目全部をコピーしているのはデータの範囲(どの列までなのか)が一定ではないからなのでしょうか?
だったらこうしてみてください。入力のある最右列の列番号を取得しXとします。

Sub 転記2()

Dim WorkPath As String
Dim Target As String
Dim MaxRow As Long, x As Long

Application.ScreenUpdating = False
WorkPath = "C:\Documents and Settings\Zawa\デスクトップ\Test"
Target = Dir(WorkPath & "\*.xls", vbNormal)
MaxRow = 1

Do While Target <> ""
If Target <> ThisWorkbook.Name Then

Workbooks.Open WorkPath & "\" & Target

With Workbooks(Target)
With .Sheets("Sheet1")
x = .Cells(1, Columns.Count).End(xlToLeft).Column
.Range(.Cells(1, 1), .Cells(1, x)).Copy ThisWorkbook.Sheets("Sheet1").Cells(MaxRow, 2)
End With
ThisWorkbook.Sheets("Sheet1").Cells(MaxRow, 1).Value = Target
MaxRow = MaxRow + 1
.Close SaveChanges:=False
End With
End If
Target = Dir()
Loop
Application.ScreenUpdating = True
MsgBox "転記が終了しました。"
End Sub

おはようございます。merlionXXです。
前回の続きのようですね。

Workbooks(Target).Sheets("Sheet1").Rows("1:1").Copyと、1行目全部をコピーしているのはデータの範囲(どの列までなのか)が一定ではないからなのでしょうか?
だったらこうしてみてください。入力のある最右列の列番号を取得しXとします。

Sub 転記2()

Dim WorkPath As String
Dim Target As String
Dim MaxRow As Long, x As Long

Application.ScreenUpdating = False
WorkPath = "C:\Documents and Settings\Zawa\デスクトッ...続きを読む


このカテゴリの人気Q&Aランキング

おすすめ情報