use strict; use warnings; use Win32::Process::Info; use Data::Dumper; my $pi = Win32::Process::Info->new(); for ( $pi->ListPids ) { my ($info) = $pi->GetProcInfo ($_); print "Excel instance at PID $_.\n" if $info->{Name} =~ /excel\.exe/i; }