Gostaria de imprimir automaticamente um código QR de uma das minhas células. A melhor maneira de fazer isso que encontrei é usando a função IMAGE.
A função se parece com isso:
=IMAGE("https://api.qrserver.com/v1/create-qr-code/?data="&ENCODEURL(B2))
Infelizmente, às vezes, quando imprimo após alterar o valor da minha célula, ele imprime antes que o QR Code seja gerado e recebo algo assim: O PrintPreview mostra uma sequência de texto de "Imagem" onde o QR Code deveria estar
Tentei vários métodos para concluir a função, mas nenhum foi confiável.
Sub ChangePrintedQR()
Dim ImgRange As Range
Set ImgRange = Range("B4")
Range("B2") = Now
' ImgRange.Formula = "=IMAGE(""https://api.qrserver.com/v1/create-qr-code/?data=""&ENCODEURL(B2))" 'Having this line can print "Busy" instead of "Picture"
' While ImgRange.Text = "Picture" 'This gets stuck in an infinite loop
' Debug.Print ImgRange.Text 'regardless of this line, trying the Value of the cell does the same
' Wend
' Application.Calculate 'This method does nothing
' If Not Application.CalculationState = xlDone Then
' DoEvents
' End If
' Application.Wait (Now + TimeValue("0:00:10")) 'This results in the waiting, but no change to the printed sheet.
ActiveSheet.PrintPreview
End Sub
Observe que às vezes obtenho uma imagem atualizada ao imprimir, mas outras vezes não. Gostaria de poder imprimir uma imagem atualizada todas as vezes.