[an error occurred while processing this directive]

Support code for Microsoft (R) Office. (Office, VBA, source code), Software
Stefan Ram 721198 = http://www.purl.org/stefan_ram/pub/kn_off_en

kn_off.bas

This is a VBA  module to support Microsoft Office 2000.

Manual

Overview

Function ksf_findmenu(kva_application As Object, kva_caption As String) As Integer
Find a menu of an Office application by name.

Alphabetic List

ksf_findmenu

Synopsis
Function ksf_findmenu(kva_application As Object, kva_caption As String) As Integer
Description
Find a menu of an Office application by name.
Example
"Debug.Print ksf_test(Word.Application, "&?")" will return the index of the menu named "&?".
kva_application As Object
The first argument must be the application object of the application with the menus to be searched in.
kva_caption As String
The second argument is the name (caption) of the menu to be searched for. For example, the string ""&?"" or the string ""&help"".
ksf_findmenu As Integer
.The result of the function is the index of the menu if it was found. The integer "-21745" (not found) is returned if a menu with this caption was not found. The integer "-21746" (not unique) is returned if a menu with this caption was found more than once.

Source Code

This is a VBA module named "kn_off.bas". It contains support code for Microsoft (R) Office 2000.

kn_off.bas
Option Explicit 
Function ksf_findmenu(kva_application As Object, kva_caption As String) As Integer 
Dim kvl_object As Object 
Dim kvl_variant As Variant 
Dim kvl_found As Integer 
Dim kvl_index As Integer 
Dim kvl_commandbar As Office.CommandBar 
Dim kvl_controls As Office.CommandBarControls 
Dim kvl_caption As String 
Set kvl_commandbar = kva_application.CommandBars("Menu Bar") 
Set kvl_controls = kvl_commandbar.Controls 
Set kvl_object = Word.Application 
For Each kvl_variant In kvl_controls 
kvl_caption = kvl_variant.Caption 
If kvl_caption = kva_caption Then 
kvl_found = kvl_found + 1 
kvl_index = kvl_variant.index 
End If 
Next kvl_variant 
If kvl_found < 1 Then 
ksf_findmenu = -21745 
ElseIf kvl_found > 1 Then 
ksf_findmenu = -21746 
Else 
ksf_findmenu = kvl_index 
End If 
End Function

More information and tools regarding this page   
Form for messages to the publisher regarding this page   
Copyright 2001 Stefan Ram, Berlin. All rights reserved. This page is a publication by Stefan Ram. This page serves teaching purposes related to classes the author is giving. It may be used for free at public schools and universities. This means that the unmodified page at the address "https://userpage.fu-berlin.de/~ram/kn_off_en.html" may be read. However, it is not allowed to distribute copies or to mirror this page on any other server. Everybody is allowed to link to this page. However, it is not allowed to include this page into an HTML frame. Das Setzen von Verweisen (Links, Hyperlinks) auf diese Seite ist jedermann gestattet und ausdrücklich erwünscht Nicht gestattet ist das Einbinden dieser Seite in Frames. Es ist jedem Menschen (jeder natürlichen Person) gestattet, eine Kopie dieser Seite zu lesen, zu speichern und auszudrucken. Alle anderen Nutzungsarten bedürfen einer vorherigen Vereinbarung mit dem Urheber Stefan Ram. Jegliche Nutzung zu Zwecken mit direkter oder indirekter Gewinnerzielungsabsicht, auch bei privaten Bildungsträgern, bedarf einer vorherigen Vereinbarung mit dem Urheber Stefan Ram. Ich (Stefan Ram) behaupte nicht, daß Aussagen auf meinen Seiten wahr sind. Vielmehr können Aussagen auf diesen Seiten auch das genaue Gegenteil der Wahrheit sein (beispielsweise als Scherz, als Fiktion, als Kunst, als Ironie oder aufgrund von Fehlern). Wenn sichere Information über Sachverhalte benötigt wird, dann dürfen meine Seiten nicht herangezogen werden. Durch die bloße Beschreibungen von Sachverhalten in einer meiner Veröffentlichungen, soll nicht notwendigerweise ausgedrückt werden, daß ich diese gutheiße oder mißbillige. Hierzu bedarf es vielmehr einer ausdrücklichen, eindeutig als Meinungsäußerung erkennbaren, Erklärung von mir (Stefan Ram). Aus der Aufnahme eines Verweises (link, hyperlink) auf eine meiner Seiten darf keinesfalls gefolgert werden, daß ich (Stefan Ram) die Ansichten, Meinungen oder Weltbilder des Zieles des Verweises teile. Zur Lehrzwecken und zu Zwecken der Berichterstattung nehme ich auch Verweise auf Seiten auf, wenn ich ganz gegen die dort veröffentlichten Seiten eingestellt bin, beispielsweise als "öffentliche Anprangerung" oder als "schlechtes Beispiel". Ich nehme auch zu Lehrzwecken Verweise auf Beispiele bestimmter Typen von Angeboten auf, ohne daß ich damit eine Empfehlung zu dem Ziel des Verweises ausspreche. Falls ich mitteilen will, daß ich eine Seite empfehle oder dort veröffentlichte Meinungen teile, so werde ich dies ausdrücklich dazu schreiben. Wo dies nicht geschieht, so soll dies auch nicht stillschweigend ausgedrückt werden. slrprd, PbclevtugFgrsnaEnz