गणना समाप्त होने पर क्या मैं एक्सेल बीप कर सकता हूं?


13

मेरे पास एक्सेल में वास्तव में लंबी गणनाएं हैं। मैं अपना ध्यान स्क्रीन से हटाना चाहता हूं और अपने डेस्क पर कुछ करना चाहता हूं, लेकिन गणना समाप्त होने पर इसके लिए सतर्क रहना चाहिए।

कोई विचार?


1
आप गणना कैसे कर रहे हैं? यदि यह VBA में है, तो VBA की "Beep" पद्धति का उपयोग क्यों न करें ? आपने पहले से क्या कोशिश की है?
Ƭᴇc atιᴇ007

2
@ techie007 नहीं VBA। बस बड़े एक्सेल स्प्रेडशीट में कार्य करता है।
एलिय्याह

1
फिर भी आप शायद बीप फ़ंक्शन का उपयोग कर सकते हैं, खासकर यदि आप एसएस वास्तव में "फ़ार्मुलों" के बजाय गणना करने के लिए "फ़ंक्शन" का उपयोग कर रहे हैं। लेकिन "आप" का उपयोग कैसे कर सकते हैं यह इस बात पर बहुत निर्भर करता है कि आपकी स्प्रैडशीट कैसे काम करती है, जिसे हम नहीं जानते। जैसे आप केवल एक सेल में मान टाइप कर रहे हैं और फिर इसे खत्म करने के लिए वास्तव में लंबे समय तक इंतजार करना पड़ रहा है, या क्या आप कोशिकाओं को भरने के बाद गणना शुरू करने के लिए एक बटन दबाते हैं? यदि आप VBA संपादक को खोलने के लिए F11 को हिट करते हैं, तो क्या वहां कोड का एक गुच्छा है?
14c atιᴇ007

@ Techie007 मैं सूत्रों का उपयोग कर रहा हूं। मैं काम का एक गुच्छा के बाद F9 दबाऊंगा और इंतजार करना होगा।
एलियाहू

आप अपनी गणना दूसरे तरीके से करेंगे। आप जो चाहते हैं वह संभव नहीं है यदि आप एक्सेल को खुली कार्यपुस्तिका पर गणना करने के लिए कह रहे हैं
रामहाउंड

जवाबों:


21

ठीक है, कुछ करने की कोशिश करें (निर्देश एक्सेल 2007 या नया मान लें):

  • अपनी कार्यपुस्तिका खोलें।
  • इसे मैक्रो-सक्षम एसएस ( .XLSM) के रूप में सहेजें ।
  • VBA कोडिंग विंडो खोलने के लिए Alt-F11 को हिट करें।
  • VBAProject ( yourbook.xlsm) पर राइट-क्लिक करें और इंसर्ट → मॉड्यूल डालें।
  • नव निर्मित "मॉड्यूल 1" खोलें।
  • मॉड्यूल पेस्ट में यह स्निपेट:

    Sub Auto_Open()
        Application.OnKey "{F9}", "F9Handler"
    End Sub
    

    हर बार एसएस खुलने के बाद F9 कुंजी को फिर से असाइन करने का कारण होगा। जब आप F9 को मारेंगे तो यह F9Handlerसामान्य गणना के बजाय चलेगा ।

  • मॉड्यूल में, इस स्निपेट को चिपकाएँ:

    Sub F9Handler()
        Application.Calculate
        Beep
    End Sub
    

    जब आप F9 से टकराते हैं तो यही चलाया जाता है। पहली पंक्ति चलती है Application.Calculate(जो कि F9 आमतौर पर प्रदर्शन करती है), और फिर बीप्स।

  • सब कुछ बचा लो।

  • एक्सेल को बंद करें।
  • (रे) आपके द्वारा बनाए गए XLSM को खोलें।
  • फायदा। :)

नोट: आपको संभवतः मैक्रोज़ को सक्षम करना होगा और / या दस्तावेज़ को "विश्वसनीय" दस्तावेज़ बनाना होगा ताकि यह सुनिश्चित हो सके कि मैक्रो (ओं) को चलाने के लिए।

और जानकारी:


5

जैसा कि दूसरों ने बताया है, beepVisual Basic (VB) में कमांड का उपयोग करें :

Function beepNow()
Beep 
End Function

VB कोडिंग प्राप्त करने के लिए, आपको Developer tabउपलब्ध होने की आवश्यकता है (देखें: डेवलपर टैब दिखाई दे रहा है )

इसलिए जब आपके पास सेल या स्थिति में बदलाव होगा, तो यह बीप होगा। VBS कोड को कॉल करने के लिए मैक्रो का उदाहरण दें:=IF(C2<>C3,beepNow(),"")


2
बस इस बात से अवगत रहें कि यदि आप वर्तमान में किसी भी VBA UDF का उपयोग नहीं कर रहे हैं, तो उन्हें शुरू करने से बड़े पैमाने पर प्रदर्शन में गिरावट आ सकती है (जैसे, सामान्य कार्यों के विपरीत, वे केवल मुख्य थ्रेड पर चलते हैं)। एक एकल बीप के साथ एक मुद्दा नहीं होना चाहिए, लेकिन अगर आप इसे हर जगह छिड़कना शुरू करते हैं तो आपके पास मुद्दे होंगे।
सपि s

1
दुर्भाग्य से यह फ़ंक्शन आपके पीसी स्पीकर का उपयोग करता है - आपके साउंड कार्ड और स्पीकर नहीं, बल्कि आंतरिक स्पीकर। FYI करें - कई कंपनियों में पीसी स्पीकर को हटा दिया गया है या अक्षम कर दिया गया है, इसलिए आपको कुछ भी नहीं सुनाई देगा।
राडदेवस

1

वैकल्पिक रूप से मॉड्यूल को ss में रखने के लिए, आप इसे अपने Personal.xlsb में रख सकते हैं। यह आपको किसी भी ss के लिए "बीप" उपलब्ध करवा सकता है। इसे चलाने के लिए, या तो क्विक एक्सेस टूलबार को संशोधित करें या अपने ss में क्लिक करने के लिए एक बटन / आकृति डालें और मैक्रो को असाइन करें।


सुपर उपयोगकर्ता में आपका स्वागत है। यह एक अलग-अलग समाधान के बजाय अन्य उत्तरों पर एक टिप्पणी प्रतीत होता है, जो कि उत्तर पोस्ट के लिए अभिप्रेत है। थोड़ा और प्रतिनिधि के साथ, आप टिप्पणी पोस्ट करने में सक्षम होंगे।
फिक्सर 1234

0

@ ʜcʜιᴇ007 द्वारा पोस्ट किया गया उत्तर एक अपवाद के साथ एक उत्कृष्ट है, जिस पर दूसरों ने टिप्पणी की है: Beepविधि कंप्यूटर के भीतर आपके ऑनबोर्ड (और कभी-कभी अक्षम) स्पीकर पर निर्भर करती है और आपके वक्ताओं का उपयोग नहीं करती है, इसलिए आप कुछ भी नहीं सुन सकते हैं।

मैं उस उत्तर के आधार पर वर्कअराउंड पोस्ट कर रहा हूं। अगर इसमें कम सामग्री शामिल होती तो मैं इसके बजाय एक टिप्पणी पोस्ट करता।

यहाँ मैं विंडोज पर VBA के साथ एक ध्वनि खेलने के लिए क्या उपयोग कर रहा हूँ। यह ऑनबोर्ड के बजाय आपके सामान्य कंप्यूटर स्पीकर का उपयोग करता है और अक्सर अक्षम स्पीकर Beepविधि के साथ एक्सेस किया जाता है।

@ ʜcʜι the007 द्वारा उत्तर के साथ शुरू करें। बस इसे बदलें Beep:

PlaySound sound_Up

आप sound_Upनीचे दिए गए कोड में SoundType एन्यूमरेशन (सूची) से किसी अन्य आइटम को बदलकर ध्वनि को बदल सकते हैं sound_Completeया जैसे sound_Notify

Option Explicit
' --------------------------------------------------
' --------------------------------------------------
'   REQUIRED DLL REFERENCE AND CONSTANTS
' --------------------------------------------------
' Reference to external procedure in DLL to play sounds

#If VBA7 Then
    ' 64-bit MS Office
    Private Declare PtrSafe Function sndPlaySound32bit Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As LongPtr) As LongPtr
#Else
    ' 32-bit MS Office
    Private Declare Function sndPlaySound32bit Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As LongPtr) As LongPtr
#End If

' --------------------------------------------------
' --------------------------------------------------
'   CONSTANTS
' --------------------------------------------------
'
Public Const SOUND_DO_NOT_WAIT          As String = "&H1"
Private Const SOUND_FILES_PATH          As String = "C:\Windows\Media\"

' --------------------------------------------------
' --------------------------------------------------
'   PUBLIC ENUMERATIONS
' --------------------------------------------------
'
Public Enum SoundType
    sound_None = 0
    sound_Up = 1
    sound_Down = 2
    sound_Attention = 3
    sound_Blocked = 4
    sound_Boop = 5
    sound_Complete = 6
    sound_Critical = 7
    sound_Ding = 8
    sound_Error = 9
    sound_Exclamation = 10
    sound_FastDown = 11
    sound_Information = 12
    sound_Notify = 13
    sound_PhoneRing = 14
    sound_RingOut = 15
    sound_Stop = 16
    sound_Tada = 17
    sound_Tone = 18
End Enum

' --------------------------------------------------
' --------------------------------------------------
'   PUBLIC METHODS
' --------------------------------------------------
'
Public Sub PlaySound(ByVal sound As SoundType)
' Plays a sound from a list (see the 'SoundType' Enum).  Code execution continues
'   while sound is playing.
    Dim soundFileName                   As String
    soundFileName = GetSoundFileName(sound)

    If Not soundFileName = vbNullString Then
        sndPlaySound32bit SOUND_FILES_PATH & soundFileName, SOUND_DO_NOT_WAIT
    End If
End Sub

' --------------------------------------------------
' --------------------------------------------------
'   PRIVATE DEPENDENCIES
' --------------------------------------------------
'
Private Function GetSoundFileName(ByVal soundToGet As SoundType) As String
' Returns a windows sound file name (not path) from a member of the custom
'   'SoundType' enumeration.

    Dim fName                           As String

    Select Case soundToGet
    Case sound_Up:          fName = "Speech On.wav"
    Case sound_Down:        fName = "Speech Off.wav"
    Case sound_Attention:   fName = "Windows Battery Low.wav"
    Case sound_Blocked:     fName = "Windows Pop-up Blocked.wav"
    Case sound_Boop:        fName = "Speech Misrecognition.wav"
    Case sound_Complete:    fName = "Windows Print complete.wav"
    Case sound_Critical:    fName = "Windows Critical Stop.wav"
    Case sound_Ding:        fName = "Windows Ding.wav"
    Case sound_Error:       fName = "Windows Error.wav"
    Case sound_Exclamation: fName = "Windows Exclamation.wav"
    Case sound_FastDown:    fName = "Speech Sleep.wav"
    Case sound_Information: fName = "Windows Information Bar.wav"
    Case sound_Notify:      fName = "notify.wav"
    Case sound_PhoneRing:   fName = "Windows Ringin.wav"
    Case sound_RingOut:     fName = "Windows Ringout.wav"
    Case sound_Stop:        fName = "chord.wav"
    Case sound_Tada:        fName = "tada.wav"
    Case sound_Tone:        fName = "Windows Balloon.wav"
    Case Else:              fName = vbNullString
    End Select

    GetSoundFileName = fName
End Function
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.