-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Nyomtatók, szkennerek Tabletek, E-bookok PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
Új hozzászólás Aktív témák
-
Boolash
aktív tag
Nemnagyon pörög a topik
Sikerült előrejutnom. Márcsak 1 probléma van, hátha valaki tudja.
a Selection.Find -nál szeretnék wildchardokat használni kereséshez. Engedélyeztem is a használatukat. Amit szeretnék keresni: [space]bármi[kukac]bármi[.]bármi[space]
ezt kellene lefordítani. De ez így nem jó: <[ ]*[@]*[.]*[ ]> egyrészt mert a @ is jelent valamit, meg a space-t sem kezeli így....
Hogy kellene?
Köszi -
Boolash
aktív tag
word-ben írom, de hivatkozok excel-re is. Tehát itt jelen esetben a wordben megtalált @ -t egy excel munkafüzetbe dobálja.
Amúgy itt tartok:Sub akarmi()
Dim Obj1 As Object
Set Obj1 = CreateObject("excel.application")
Obj1.Visible = True
Obj1.Workbooks.Add
Do Until ActiveDocument.Bookmarks("\Sel") = _
ActiveDocument.Bookmarks("\EndOfDoc")
With Selection.Find
.Forward = True
.Wrap = wdFindStop
.Text = "@"
.Execute
End With
Dim i As Integer
i = 1 + i
Dim valtozoword As String
valtozoword = Selection.Text
'MsgBox valtozoword
'Dim i As Integer
'If i < 25 Then i = 1 + i 'itt i-nek annyinak kéne lenni, mint ahány @ van
Dim excelmezo As String
'MsgBox excelmezo
Obj1.Worksheets("Munka1").Cells(i, 1).Value = valtozoword
Loop
ActiveDocument.Save
End SubEz így végigkeresi az összeset a wordben, és bedobja az excelbe, a cellákba szépen egymás alá.
Az az egyik baj, hogy ez így végtelen... Miért nem száll ki a Loop-ból?? Többször végigmegy a kereséssel az egész word dokumentumon, és így végtelen számút talál és rak be az excelbe....
KösziOks.. benéztem a Loop-ot, már kijavítottam. viszont a keresésre ha van vkinek ötlete, az jöhet!
-
Boolash
aktív tag
word-ben írom, de hivatkozok excel-re is. Tehát itt jelen esetben a wordben megtalált @ -t egy excel munkafüzetbe dobálja.
Amúgy itt tartok:Sub akarmi()
Dim Obj1 As Object
Set Obj1 = CreateObject("excel.application")
Obj1.Visible = True
Obj1.Workbooks.Add
Do Until ActiveDocument.Bookmarks("\Sel") = _
ActiveDocument.Bookmarks("\EndOfDoc")
With Selection.Find
.Forward = True
.Wrap = wdFindStop
.Text = "@"
.Execute
End With
Dim i As Integer
i = 1 + i
Dim valtozoword As String
valtozoword = Selection.Text
'MsgBox valtozoword
'Dim i As Integer
'If i < 25 Then i = 1 + i 'itt i-nek annyinak kéne lenni, mint ahány @ van
Dim excelmezo As String
'MsgBox excelmezo
Obj1.Worksheets("Munka1").Cells(i, 1).Value = valtozoword
Loop
ActiveDocument.Save
End SubEz így végigkeresi az összeset a wordben, és bedobja az excelbe, a cellákba szépen egymás alá.
Az az egyik baj, hogy ez így végtelen... Miért nem száll ki a Loop-ból?? Többször végigmegy a kereséssel az egész word dokumentumon, és így végtelen számút talál és rak be az excelbe....
Köszi -
Boolash
aktív tag
Ebben mi lehet a hiba?
Elméletileg azt csinálná, hogy körbeszalad a word dokumentumon, kikeresi a @-ot, majd ha talál azt egy új excelbe belepakolja (max100-at). Majd menti.Sub akarmi()
Dim Obj1 As Object
Set Obj1 = CreateObject("excel.application")
Obj1.Visible = True
Obj1.Workbooks.Add
Do Until ActiveDocument.Bookmarks("\Sel") = _
ActiveDocument.Bookmarks("\EndOfDoc")
With Selection.Find
.Forward = True
.Wrap = wdFindStop
.Text = "@"
.Execute
End With
Dim i As Integer
If i < 100 Then
i = 1 + i
Selection.Copy
Obj1.Worksheets("Munka1").Cells(1, i).Value = ActiveDocument.Selection
Loop
ActiveDocument.Save
End SubÍgy azt dobja, hogy Loop, without Do. Szerintem több hina is lesz. pl.: Obj1.Worksheets("Munka1").Cells(1, i).Value = ActiveDocument.Selection
Hogy lehetne ezeket?
KösziOké.
az If-et így kellene írnom:If i < 100 Then i = 1 + i
ezzt dobja hibának:
Obj1.Worksheets("Munka1").Cells(1, i).Value = ActiveDocument.Selection
object doesn't support this property or method.....
-
Boolash
aktív tag
Ebben mi lehet a hiba?
Elméletileg azt csinálná, hogy körbeszalad a word dokumentumon, kikeresi a @-ot, majd ha talál azt egy új excelbe belepakolja (max100-at). Majd menti.Sub akarmi()
Dim Obj1 As Object
Set Obj1 = CreateObject("excel.application")
Obj1.Visible = True
Obj1.Workbooks.Add
Do Until ActiveDocument.Bookmarks("\Sel") = _
ActiveDocument.Bookmarks("\EndOfDoc")
With Selection.Find
.Forward = True
.Wrap = wdFindStop
.Text = "@"
.Execute
End With
Dim i As Integer
If i < 100 Then
i = 1 + i
Selection.Copy
Obj1.Worksheets("Munka1").Cells(1, i).Value = ActiveDocument.Selection
Loop
ActiveDocument.Save
End SubÍgy azt dobja, hogy Loop, without Do. Szerintem több hina is lesz. pl.: Obj1.Worksheets("Munka1").Cells(1, i).Value = ActiveDocument.Selection
Hogy lehetne ezeket?
Köszi -
Boolash
aktív tag
Igen megcsináltam, majd meg is néztem a kódot. Az okés, a find megvan.
Csak nekem az kellene, hogyha talál egy @-ot, akkor ne csak az legyen kijelölve, hanem az egész szó. Valahogy a Range-t kellene kiterjeszteni. -
Boolash
aktív tag
Sziasztok!
Egy gyors segítség jól jönne! Word-ben programozok, és elakadtam (elég hamar...) Azt szeretném kérdezni, hogy hogyan kell egy teljes szót kijelölni? Konrétan arról lenne szó, hogy rákeresek egy betüre a teljes word dokumentumban, majd az kellene nekem, hogy ne csak az a betü legyen kijelölve, hanem az egész szó!Set myrange = ActiveDocument.Content
myrange.Find.ClearFormatting
With Selection.Find
.Text = "@"
.Forward = True
End With
Selection.Find.Execute
End SubIlletve ez így ugyebár, ha megtalálta az első egyezőt, akkor leáll. Gondolom egy if -el nézem azt, hogy a myrange végére ért e. Hogy mondom neki, hogy végére ért e?
Köszi! -
Boolash
aktív tag
Nemtudom. De én úgy szoktam megtudnia a parancsokat, hogy elindítok egy makró rögzítést és megadom a függvényt ami kell nekem beépítetből, így szépen lementi a mscro verzióját.
Okés, megvan minden! Köszi!
Egyébként: ActiveCell.SpecialCells(xlLastCell).Select -
Boolash
aktív tag
Hát nem tudom hogy amiatt reklamál-e hogy az else és a then között nincs semmilyen utasítás.
Áhh.. Megvan..
Kicsit túllőttem a célon... Sok volt az 1000 oszlop.
Esetleg azt nem tudod, hogy hogy lehet megnézni, hogy az adott sorban/oszlopban hol van az utolsó elem? Ne kellejen feleslegesen hiába végignézni sok-sok cellát...
Köszi! -
Boolash
aktív tag
Sziasztok!
Fontos lenne!
Ezzel mi lehet a hiba?Sub elso()
Dim i, j As Integer
For i = 1 To 65536
For j = 1 To 1000
If Munka1.Cells(i, j).Value = Munka2.Cells(i, j).Value Then
Else
Munka1.Cells(i, j).Interior.ColorIndex = 27
End If
Next j, i
End SubEz a sor nem jó: If Munka1.Cells(i, j).Value = Munka2.Cells(i, j).Value Then
merthogy application/object defined error....
De miért?
Hogy kellene?Egyébként azt csinálja, hogy 2 munkalapot összehasonlít, és ahol különbözik a kettő, azt sárgával megjelöli.
Köszi!
Új hozzászólás Aktív témák
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Nyomtatók, szkennerek Tabletek, E-bookok PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
- Dell USB-C, Thunderbolt 3, TB3, TB4 dokkolók (K20A) WD19TB / WD19TBS / WD22TB4
- HYTE Y70 Touch új, fóliás eladó
- Xiaomi Redmi 13C 128GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! 14TB WD Red Pro WD141KFGX meghajtó garanciával hibátlan működéssel
- Apple iPhone 13 Pro Max 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
