|
|
�à çãîâîðû îá Àìåðèêå www.gerasimov.org
|
| Ïðåäûäóùàÿ òåìà :: Ñëåäóþùàÿ òåìà |
| Àâòîð |
Ñîîáùåíèå |
Oleg_Msk Æèòåëü ôîðóìÃ
Çàðåãèñòðèðîâàí: 30.09.2004 Ñîîáùåíèÿ: 1000
|
Äîáàâëåíî: Ïÿòíèöà, Íîÿáðÿ 25, 2005 4:54pm Çàãîëîâîê ñîîáùåíèÿ: |
|
|
| White Owl ïèñàë(à): |
| Oleg_Msk ïèñàë(à): |
| À ìîæÃî ëþáîé ïðèìåð ðà çîáðà òü? Ã�ðîñòî ÿ îòêðûë VB ïî F11.. |
Ã�Ã¥ ïóòà é. VB è VBA ýòî î÷åÃü ðà çÃûå âåùè.
VB ýòî ñà ìîñòîÿòåëüÃûé ÿçûê Visual Basic. Ã�à Ãåì ìîæÃî äåëà òü âñå ÷òî óãîäÃî.
VBA - Visual Basic for Applications. Âñòðà åâûìûé ÿçûê. Åãî âîçìîæÃîñòè îãðà Ãè÷åÃû òîëüêî ðà áîòîé ñ äîêóìåÃòîì òîãî ïðèëîæåÃèÿ â êîòîðûé åãî âñóÃóëè. Ã�î òà ì îà öà ðü è áîã. ÈÃîãäà òî ÷òî ìîæÃî ñäåëà òü Ãà VBA â ïðèÃöèïå ÃåâîçìîæÃî ñäåëà òü Ãà VB.
Ó VB è VBA ñîâðåøåÃÃî ðà çÃûå ïîäõîäû. Ã�à VB ãëà âåÃñòâóåò ïðîãðà ììà , Ãà VBA - äîêóìåÃò.
Ã�óòà òü VB è VBA ýòî êà ê ñêëà äñêîé ïîãðóç÷èê ïóòà òü ñ êà ðüåðÃûì ñà ìîñâà ëîì
À ïðèìåð... Ãó äà âà é Ãà ÷Ãåì ñ ÷åãî-Ãèáóäü ïðîñòåÃüêîãî. Ã�à ïðèìåð ïîäñ÷èòà òü êîëè÷åñòâî óïîìèÃà Ãèé êà êîãî Ãèáóäü ïðåäìåòà Ãà ëèñòå. Äåëà åøü â Ã�êñåëå ñòðà Ãè÷êó ñ Ãà çâà Ãèåì "Fruits" è Ãà Ãåé â ñòîëáèê ïèøåøü:
| Êîä: |
ßáëîêî
ÃðóøÃ
ßáëîêî
ßáëîêî
ÃðóøÃ
Ëèìîà |
Òåïåðü òûêà åøü Alt+F11 è â ãëà âÃîì ìåÃþ âûáèðà åøü Insert->Module.
 îòêðûâøåìñÿ îêîøêå ïèøåøü:
| Êîä: |
Sub CountFruits()
Dim wsSrc As Worksheet, wsDest As Worksheet
Dim rSrc As Range, rDest As Range
Set wsSrc = ThisWorkbook.Worksheets("Fruits")
Set wsDest = ThisWorkbook.Worksheets.Add
wsDest.Range("A1") = "Fruit"
wsDest.Range("B1") = "Count"
For Each rSrc In wsSrc.UsedRange
Set rDest = wsDest.Columns(1).Find(rSrc.Text)
If rDest Is Nothing Then
Set rDest = wsDest.Cells(wsDest.UsedRange.Rows.Count + 1, 1)
rDest.Value = rSrc.Text
End If
rDest.Offset(0, 1).Value = rDest.Offset(0, 1).Value + 1
Next
End Sub |
Òåïåðü çà êðûâà åøü VBA, â îñÃîâÃîì îêÃÃ¥ Excel Ãà æèìà åøü Alt+F8, âûáèðà åøü èç ñïèñêà ìà êðîñîâ Ãà ø CountFruits è Ãà æèìà åøü Run. È âñå. Ã�ó åñëè çÃà åøü VB, òî ðà çîáðà òüñÿ áóäåò ÃÃ¥ ñëîæÃî
À äà ëüøå, çà äà âà é êîÃêðåòÃûå âîïðîñû, áóäåì äà âà òü êîÃêðåòÃûå îòâåòû.
Âîò ýòî:
| Oleg_Msk ïèñàë(à): |
| Ãó Ãà ïðèìåð, ñòðîêà åñòü ó ìåÃÿ ñ ïëþñèêîì âïåðåäè, êîãäà ìû Ãà æèìà åì Ãà ïëþñèê, ðà ñêðûâà åòñÿ äîïîëÃèòåëüÃà ÿ èÃôîðìà öèÿ, âÃèç îò ýòîé ñòðîêè, âðîäå êà ê ìåÃþ ðà ñêðûâà þùåãîñÿ... |
Ã�ðèìåð î÷åÃü ÃåêîÃêðåòÃîãî âîïðîñà . È âîîáùå ÃÃ¥ ïîÃÿòÃî, âîïðîñ ëè ýòî? Ã�ó åñòü ó òåáÿ ñòðîêà ñ ïëþñèêîì è ÷òî? |
ÂÎ!!Ñïà ñèáî!ÂÃèêà þ ïîñòåïåÃÃî, ñêà ÷à ë òðè êÃèãè îñëîì.......Ã�ðà âäà êîä ÃÃ¥ ðà áîòà åò, ÃÃ¥ çÃà þ ïî÷åìó, ìîæåò ÿ ÷òî êðèâî äåëà þ..... |
|
| Âåðíóòüñÿ ê íà÷àëó |
|
 |
Helen_NJ Æèòåëü ôîðóìÃ

Çàðåãèñòðèðîâàí: 13.11.2003 Ñîîáùåíèÿ: 1539 Îòêóäà: NC, USA
|
Äîáàâëåíî: Ñóááîòà, Íîÿáðÿ 26, 2005 5:53am Çàãîëîâîê ñîîáùåíèÿ: |
|
|
| Oleg_Msk ïèñàë(à): |
| âîò â äà ÃÃûé ìîìåÃò ýòî äåëà åòñÿ ðóêà ìè è à êòóà ëüÃî áûëî áû ñäåëà òü ìà êðîñ.....è çà îäÃî ïëîòÃÃ¥Ãüêî ñ ýòèì ðà çîáðà òüñÿ, èáî ó ìåÃÿ òóò ïðîáåë..... |
Ã�ó òà ê çà ïèøèòå òî, ÷òî äåëà åòñÿ ðóêà ìè, êà ê ìà êðî (Macro -> Record) è ïîòîì êðîèòå ýòîò êîä êà ê Ãà äî. Ã�à ñ÷åò "ïðîáåëà " ÃÃ¥ ïîÃÿòÃî - òà ê âû VB/VBA çÃà åòå èëè Ãåò? Êà ê òóò ïðà âèëüÃî çà ìåòèëè, ýòî â ïðèÃöèïå ðà çÃûå âåùè, Ãî, çÃà ÿ îäÃî, ñ äðóãèì ðà çîáðà òüñÿ ìîæÃî Ãà ðà ç. |
|
| Âåðíóòüñÿ ê íà÷àëó |
|
 |
White Owl Øòà òÃûé çà ÃóäÃ

Çàðåãèñòðèðîâàí: 10.03.2003 Ñîîáùåíèÿ: 2452 Îòêóäà: USA, New York City
|
Äîáàâëåíî: Âîñêðåñåíüå, Íîÿáðÿ 27, 2005 8:43pm Çàãîëîâîê ñîîáùåíèÿ: |
|
|
| Àðòåì ïèñàë(à): |
| È âîò åñëè ìÃÃ¥ Ãà äî áóäåò ýòó çà äà ÷ó ñäåëà òü, òî âîò ýòî Ãà äî êà ÷à òü. À åñëè âîà òó çà äà ÷ó, òî âîò ýòî êà ÷à òü? ß òà ê òîëüêî è áóäó - êà ÷à òü. |
Ã�ó ïî÷åìó áû è Ãåò? Åñëè ó òåáÿ åñòü çà äà ÷à è òû çÃà åøü ÷òî ãäå-òî åñòü èÃñòðóìåÃò ýòó çà äà ÷ó ðåøà þùèé Ãà óðà . Ã�î÷åìó áû ÃÃ¥ ïîéòè è ÃÃ¥ âçÿòü ýòîò èÃñòðóìåÃò? Òåì áîëåå çà áåñïëà òÃî?
Åñëè îà ñëèøêîì òÿæåëûé äëÿ òâîåãî êà Ãà ëà , ìîæÃî çà ïîìÃèâ òî÷Ãûé à äðåñ ñõîäèòü ê êîìó-Ãèáóäü ñ òîëñòûì êà Ãà ëîì. ß îáû÷Ãî õîäèë â îôèñ ïðîâà éäåðà êà êîãî-Ãèáóäü ñòà âèë ïèâî òà ìîøÃèì à äìèÃà ì è ïîëó÷à ë âñå ÷òî ÃóæÃî  |
|
| Âåðíóòüñÿ ê íà÷àëó |
|
 |
White Owl Øòà òÃûé çà ÃóäÃ

Çàðåãèñòðèðîâàí: 10.03.2003 Ñîîáùåíèÿ: 2452 Îòêóäà: USA, New York City
|
Äîáàâëåíî: Âîñêðåñåíüå, Íîÿáðÿ 27, 2005 8:46pm Çàãîëîâîê ñîîáùåíèÿ: |
|
|
| Oleg_Msk ïèñàë(à): |
| Ã�ðà âäà êîä ÃÃ¥ ðà áîòà åò, ÃÃ¥ çÃà þ ïî÷åìó, ìîæåò ÿ ÷òî êðèâî äåëà þ..... |
À ñëà áî ñêà çà òü ÷òî êîÃêðåòÃî ÃÃ¥ ðà áîòà åò?  êà êîì ìåñòå? Ñ êà êîé äèà ãÃîñòèêîé? Ó ìåÃÿ îÃî ðà áîòà åò. À åñëè ñêà æåøü ÷òî èìåÃÃî ó òåáÿ ÃÃ¥ ïîëó÷à åòñÿ - ñêà æó ãäå îøèáêà çà êðà ëà ñü. |
|
| Âåðíóòüñÿ ê íà÷àëó |
|
 |
Àðòåì Ìîäåðà òîð

Çàðåãèñòðèðîâàí: 10.03.2003 Ñîîáùåíèÿ: 8295 Îòêóäà: Russia, Ufa
|
Äîáàâëåíî: Âîñêðåñåíüå, Íîÿáðÿ 27, 2005 9:08pm Çàãîëîâîê ñîîáùåíèÿ: |
|
|
| White Owl ïèñàë(à): |
| Àðòåì ïèñàë(à): |
| È âîò åñëè ìÃÃ¥ Ãà äî áóäåò ýòó çà äà ÷ó ñäåëà òü, òî âîò ýòî Ãà äî êà ÷à òü. À åñëè âîà òó çà äà ÷ó, òî âîò ýòî êà ÷à òü? ß òà ê òîëüêî è áóäó - êà ÷à òü. |
Ã�ó ïî÷åìó áû è Ãåò? Åñëè ó òåáÿ åñòü çà äà ÷à è òû çÃà åøü ÷òî ãäå-òî åñòü èÃñòðóìåÃò ýòó çà äà ÷ó ðåøà þùèé Ãà óðà . Ã�î÷åìó áû ÃÃ¥ ïîéòè è ÃÃ¥ âçÿòü ýòîò èÃñòðóìåÃò? Òåì áîëåå çà áåñïëà òÃî?
Åñëè îà ñëèøêîì òÿæåëûé äëÿ òâîåãî êà Ãà ëà , ìîæÃî çà ïîìÃèâ òî÷Ãûé à äðåñ ñõîäèòü ê êîìó-Ãèáóäü ñ òîëñòûì êà Ãà ëîì. ß îáû÷Ãî õîäèë â îôèñ ïðîâà éäåðà êà êîãî-Ãèáóäü ñòà âèë ïèâî òà ìîøÃèì à äìèÃà ì è ïîëó÷à ë âñå ÷òî ÃóæÃî  |
ÃŒÃÃ¥ Ãåãäå áðà òü "òîëñòûé êà Ãà ë". |
|
| Âåðíóòüñÿ ê íà÷àëó |
|
 |
Oleg_Msk Æèòåëü ôîðóìÃ
Çàðåãèñòðèðîâàí: 30.09.2004 Ñîîáùåíèÿ: 1000
|
Äîáàâëåíî: Âîñêðåñåíüå, Íîÿáðÿ 27, 2005 10:13pm Çàãîëîâîê ñîîáùåíèÿ: |
|
|
| White Owl ïèñàë(à): |
| Oleg_Msk ïèñàë(à): |
| Ã�ðà âäà êîä ÃÃ¥ ðà áîòà åò, ÃÃ¥ çÃà þ ïî÷åìó, ìîæåò ÿ ÷òî êðèâî äåëà þ..... |
À ñëà áî ñêà çà òü ÷òî êîÃêðåòÃî ÃÃ¥ ðà áîòà åò?  êà êîì ìåñòå? Ñ êà êîé äèà ãÃîñòèêîé? Ó ìåÃÿ îÃî ðà áîòà åò. À åñëè ñêà æåøü ÷òî èìåÃÃî ó òåáÿ ÃÃ¥ ïîëó÷à åòñÿ - ñêà æó ãäå îøèáêà çà êðà ëà ñü. |
Îò÷åâî æ ÃÃ¥ ñêà æó -ñêà æó:
Run-time error '9':
Subscript out of range |
|
| Âåðíóòüñÿ ê íà÷àëó |
|
 |
White Owl Øòà òÃûé çà ÃóäÃ

Çàðåãèñòðèðîâàí: 10.03.2003 Ñîîáùåíèÿ: 2452 Îòêóäà: USA, New York City
|
Äîáàâëåíî: Ïîíåäåëüíèê, Íîÿáðÿ 28, 2005 12:47am Çàãîëîâîê ñîîáùåíèÿ: |
|
|
| Oleg_Msk ïèñàë(à): |
Run-time error '9':
Subscript out of range |
À åñëè â ýòîì äèà ëîãå Ãà æà òü êÃîïî÷êó Debug, òî îÃî ïîêà æåò åùå è â êà êîé ñòðîêå îøèáêà ïðîèçîøëà ....
À ñêîðåå âñåãî îøèáêà ïðîèçîøëà â ñòðîêå
| Êîä: |
| Set wsSrc = ThisWorkbook.Worksheets("Fruits") |
Ã�îòîìó ÷òî òû ïîëåÃèëñÿ ïåðåèìåÃîâà òü ëèñò ñ ôðóêòà ìè â "Fruits" à îñòà âèë åãî êà ê îà áûë "Ëèñò1" èëè ïåðåèìåÃîâà ë ñ îøèáêîé. ß óãà äà ë? |
|
| Âåðíóòüñÿ ê íà÷àëó |
|
 |
Oleg_Msk Æèòåëü ôîðóìÃ
Çàðåãèñòðèðîâàí: 30.09.2004 Ñîîáùåíèÿ: 1000
|
Äîáàâëåíî: Ïîíåäåëüíèê, Íîÿáðÿ 28, 2005 7:11am Çàãîëîâîê ñîîáùåíèÿ: |
|
|
| White Owl ïèñàë(à): |
| Oleg_Msk ïèñàë(à): |
Run-time error '9':
Subscript out of range |
À åñëè â ýòîì äèà ëîãå Ãà æà òü êÃîïî÷êó Debug, òî îÃî ïîêà æåò åùå è â êà êîé ñòðîêå îøèáêà ïðîèçîøëà ....
À ñêîðåå âñåãî îøèáêà ïðîèçîøëà â ñòðîêå
| Êîä: |
| Set wsSrc = ThisWorkbook.Worksheets("Fruits") |
Ã�îòîìó ÷òî òû ïîëåÃèëñÿ ïåðåèìåÃîâà òü ëèñò ñ ôðóêòà ìè â "Fruits" à îñòà âèë åãî êà ê îà áûë "Ëèñò1" èëè ïåðåèìåÃîâà ë ñ îøèáêîé. ß óãà äà ë? |
Òî÷Ãî!Òû ïðà â!
/óøåë ïîñûïà òü ãîëîâó ïåïëîì/  |
|
| Âåðíóòüñÿ ê íà÷àëó |
|
 |
|
|
Âû íå ìîæåòå íà÷èíàòü òåìû Âû íå ìîæåòå îòâå÷àòü íà ñîîáùåíèÿ Âû íå ìîæåòå ðåäàêòèðîâàòü ñâîè ñîîáùåíèÿ Âû íå ìîæåòå óäàëÿòü ñâîè ñîîáùåíèÿ Âû íå ìîæåòå ãîëîñîâàòü â îïðîñàõ
|
Powered by phpBB © 2001, 2005 phpBB Group
|