sperimentare

legge generale dei gas con VBA excel


calcolo con legge generale dei gascon VBA su excelhttp://digilander.libero.it/francescovise/vbacodice/prove.htmhttp://digilander.libero.it/francescovise/vbacodice/vbagasx.htmhttp://digilander.libero.it/francescovise/vbacodice/vbagasx.xlshttp://digilander.libero.it/francescovise/vbacodice/vbagas.htmhttp://digilander.libero.it/francescovise/vbacodice/vbagas.xlsper variante più compatta e logica vedi vbagasx.htmlegge generale dei gas :inserire dati per calcolare le diverse incognite pressione, volume, massa, peso molecolare, temperatura , applicando la formula PV=gRT/MP=gRT/MV......V=gRT/MP....g=PVM/RT...T=PVM/gR...M=gRT/PV per ogni grandezza (incognita) da calcolare, inserire nella corrispondente colonna i dati da elaborare e poi cliccare pulsante1 per eseguire il calcolo (per motivi interni al programma, la cancellazione avviene con pulsante2 che inserisce il numero 1 in ogni cella:al momento del calcolo perciò appare sempre, assieme al risultato atteso per la incognita, anche quello eseguito sui numeri 1 presenti come dati ed elaborati dalle formule relative alle varie grandezze da calcolare...) con VBA su Excel vedi anche vbagas.xls codice da copiare e incollare su foglio di excel, creando due pulsanti nei quali inserire il code stesso (cfr. per spiegazione spiega1.htm) Private Sub CommandButton1_Click() Rem legge generale dei gas Cells(1, 1) = "cancellare dati nella colonna B con pulsante2" Cells(2, 1) = "poi inserire valori e cliccare pulsante1" Cells(2, 2) = "volume ?" Cells(2, 3) = "pressione ?" Cells(2, 4) = "temperatura ?" Cells(2, 5) = "massa ?" Cells(2, 6) = "peso m." Cells(2, 7) = "moli ?" Cells(3, 1) = "costante dei gas" Cells(3, 2) = 0.082 Cells(4, 1) = "pressione in atmosfere" Cells(5, 1) = "volume in litri" Cells(6, 1) = "temperatura in kelvin" Cells(7, 1) = "massa in grammi" Cells(8, 1) = "peso molecolare" Cells(9, 1) = "numero moli non inserire" Cells(10, 1) = "calcolo incognita, poi cancella" Cells(11, 1) = "calcolo volume" Cells(12, 1) = "calcolo pressione" Cells(13, 1) = "calcolo temperatura" Cells(14, 1) = "calcolo massa" Cells(15, 1) = "calcolo peso molecolare" Cells(16, 1) = "calcolo numero moli" Cells(11, 2) = (Cells(7, 2) * Cells(3, 2) * Cells(6, 2)) / (Cells(4, 2) * Cells(8, 2)) Cells(12, 3) = (Cells(7, 3) * Cells(3, 2) * Cells(6, 3)) / (Cells(5, 3) * Cells(8, 3)) Cells(13, 4) = (Cells(4, 4) * Cells(5, 4) * Cells(8, 4)) / (Cells(7, 4) * Cells(3, 2)) Cells(14, 5) = (Cells(4, 5) * Cells(5, 5) * Cells(8, 5)) / (Cells(6, 5) * Cells(3, 2)) Cells(15, 6) = (Cells(7, 6) * Cells(3, 2) * Cells(6, 6)) / (Cells(4, 6) * Cells(5, 6)) Cells(16, 7) = (Cells(4, 7) * Cells(5, 7)) / (Cells(6, 7) * Cells(3, 2)) Cells(18, 1) = "inserire i dati nelle celle della colonna" Cells(19, 1) = "con incognita alla intestazione" Cells(20, 1) = "avviene calcolo per grandezza selezionata" Cells(21, 1) = "vengono visualizzati risultati anche per altre grandezze" Cells(22, 1) = "che assumono come dati i numeri 1" End Sub Private Sub CommandButton2_Click() For riga = 4 To 16 For colonna = 2 To 7 Cells(riga, colonna) = 1 Next colonna Next riga End Sub
 
 
 
 variante di vbagas.htm con uso di Select case k (più compatto e logico)legge generale dei gas :inserire dati per calcolare le diverse incognite pressione, volume, massa, peso molecolare, temperatura , applicando la formula PV=gRT/MP=gRT/MV......V=gRT/MP....g=PVM/RT...T=PVM/gR...M=gRT/PV per ogni grandezza (incognita) da calcolare, inserire nella corrispondente colonna B i dati da elaborare e poi cliccare pulsante1 per eseguire il calcolo inserire nella cella indicata il codice corrispondente alla incognita 1,2,3,4,5,6 con VBA su Excel vedi anche vbagasx.xls codice da copiare e incollare su foglio di excel, creando due pulsanti nei quali inserire il code stesso (cfr. per spiegazione spiega1.htm) Private Sub CommandButton1_Click() Rem legge generale dei gas,variante con Select case k Cells(1, 1) = "cancellare dati nella colonna B con pulsante2" Cells(2, 1) = "poi inserire valori e cliccare pulsante1" Cells(2, 2) = "indicare incognita" Cells(2, 3) = "VPTgMn con 1,2,3,4,5,6" Cells(3, 1) = "costante dei gas" Cells(3, 2) = 0.082 Cells(4, 1) = "pressione in atmosfere" Cells(5, 1) = "volume in litri" Cells(6, 1) = "temperatura in kelvin" Cells(7, 1) = "massa in grammi" Cells(8, 1) = "peso molecolare" Cells(9, 1) = "numero moli non inserire" Cells(10, 1) = "calcolo incognita, poi cancella" Cells(11, 1) = "1 calcolo volume" Cells(12, 1) = "2 calcolo pressione" Cells(13, 1) = "3 calcolo temperatura" Cells(14, 1) = "4 calcolo massa" Cells(15, 1) = "5 calcolo peso molecolare" Cells(16, 1) = "6 calcolo numero moli" k = Cells(3, 3) Select Case k Case 1 'volume Cells(11, 2) = (Cells(7, 2) * Cells(3, 2) * Cells(6, 2)) / (Cells(4, 2) * Cells(8, 2)) Case 2 'pressione Cells(12, 2) = (Cells(7, 2) * Cells(3, 2) * Cells(6, 2)) / (Cells(5, 2) * Cells(8, 2)) Case 3 'temperatura Cells(13, 2) = (Cells(4, 2) * Cells(5, 2) * Cells(8, 2)) / (Cells(7, 2) * Cells(3, 2)) Case 4 'massa Cells(14, 2) = (Cells(4, 2) * Cells(5, 2) * Cells(8, 2)) / (Cells(6, 2) * Cells(3, 2)) Case 5 'peso molecolare Cells(15, 2) = (Cells(7, 2) * Cells(3, 2) * Cells(6, 2)) / (Cells(4, 2) * Cells(5, 2)) Case 6 'numero moli Cells(16, 2) = (Cells(4, 2) * Cells(5, 2)) / (Cells(6, 2) * Cells(3, 2)) End Select End Sub Private Sub CommandButton2_Click() For riga = 4 To 16 Cells(riga, 2) = 1 Next riga End Sub