AD Accounts are synched to Office 365 successfully with Azure AD Connect, and the users have been licensed for Skype for Business Online (Skype for Business Online Plan 2).
This is a new Skype for Business Online deployment (online only, not a hybrid). 50 out of 200 users were not provisioned in Skype for Business Online.
I confirmed that the Skype for Business Online Plan 2 license had been applied correctly to these accounts, and confirmed their Office 365 sign-in status is Allowed.
I found that Lync 2010 had been installed in the domain as a trial but decommissioned years ago. A clean removal of Lync 2010 had been performed, i.e. disabling all users for Lync, and removing Lync 2010 servers.
However, a single Lync attribute remained on these 50 users causing them not to be provisioned in Skype for Business Online.
Using ADSIEdit, clear the msRTCSIP-DeploymentLocator on the relevant users.
Wait approximately 30 minutes for the next Azure AD Connect sync to run, and the users will be provisioned in Skype for Business Online.
I also ran a search against AD for any other users who may have the msRTCSIP-DeploymentLocator populated.
Run a LDP search to identify any users having the attribute set, then clear the attribute. This prevents the issue from reoccurring in the future for any users who may need to be provisioned for Skype for Business Online and have the attribute set.
Base DN: set to the top level domain (e.g. DC=x500,DC=co,DC=uk)