Spela ljudnoter med VBA i Microsoft Excel

Anonim

I Excel 5 och 95 är det möjligt att bifoga anteckningar till en cell med hjälp av en ljudfil.
Denna ljudnot kan spelas upp genom att öppna dialogrutan för redigering av cellnoter.
Makrot nedan kan också spela ljudnoten som är kopplad till en cell åt dig:

Sub PlaySoundNotesInExcel95 (CellAddress As String) 'endast för Excel 5 och 95 If Not Application.CanPlaySounds Stäng sedan Sub på Error Resume Next' om det inte finns något ljudnotområde (CellAddress) .SoundNote.Play On Error GoTo 0 End Sub

Excel 97 eller senare stöder inte längre användningen av ljudnoter.
Med makron nedan är det möjligt att skapa en lösning för att uppnå samma effekt:

Public Declare Function sndPlaySound Lib "winmm.dll" _ Alias ​​"sndPlaySoundA" (ByVal lpszSoundName As String, _ ByVal uFlags As Long) As Long Sub PlayWavFile (WavFileName As String, Wait As Boolean) If Dir (WavFileName) = "" Then Exit Sub 'ingen fil att spela om vänta sedan' spela upp ljud innan du kör mer kod sndPlaySound WavFileName, 0 Else 'spela ljud medan koden körs sndPlaySound WavFileName, 1 End If End Sub Sub PlaySoundNotesInExcel97 (CellAddress As String)' lösning för att spela ljudanteckningar i Excel 97 eller senare Dim SoundFileName As String SoundFileName = "" Vid fel Återuppta nästa 'uppstår ett fel om cellen inte har en anteckning SoundFileName = Range (CellAddress) .Comment.Text On Error GoTo 0 If SoundFileName = "" Then Exit Sub 'no cell note If InStr (1, SoundFileName, Chr (10))> 0 Sedan' innehåller noten en radbrytning 'använd den första raden som filnamnet SoundFileName = Left (SoundFileName, InStr (1, SoundFileName, Chr (10)) - 1) End If PlayFileWav SoundFileName, False End Sub

Så här skapar du en ljudnot:
Infoga en cellkommentar genom att högerklicka i en cell och välj Infoga kommentar….
Fyll i hela filnamnet och sökvägen till ljudfilen som ska spelas i den första meningen i cellkommentaren,
t.ex. C: \ Mappnamn \ Soundfilename.wav.
Om du vill lägga till ett skriftligt meddelande utöver ljudfilnamnet, tryck på ENTER-tangenten efter filnamnet
för att skapa en ny mening i kommentaren. Lägg till texten du vill ha i den nya meningen.
Makrot PlaySoundNotesInExcel97 kan aktiveras av eventmacro Worksheet_SelectionChange (),
detta gör att ljudnoten spelas upp varje gång användaren aktiverar cellen med ljudnoten.