my @wanted = qw(UserLocation UID foo bar quox); foreach my $mainkey (keys %CustomerUserList) { my %User = $CommonObject{CustomerUserObject}->CustomerUserDataGet(User => $mainkey); foreach my $subkey (@wanted) { $UserLocationList{$mainkey}->{$subkey} = $User{$subkey} || ''; } }