Не всичко за мен

Верую: неверник - следствие от прекомерната работа с продукти на Microsoft. Нямам девиз, нямам любимо ядене, пиене, книга, ... Знам какво обичам днес, но това изобщо не важи за утре. Мисля, че горе-долу стана ясно.

Търсене в този блог

Показват се публикациите с етикет excel. Показване на всички публикации
Показват се публикациите с етикет excel. Показване на всички публикации

понеделник, 1 юни 2015 г.

How to merge worksheets into one worksheet?

The following VBA code can help you to get data from all worksheets of active workbook together into a new single worksheet. At the same time, all of the worksheets must have the same field structure, same column headings and same column order. Please do as follows:

1. Hold down the ALT + F11 keys, and it opens the Microsoft Visual Basic for Applications window.

2. Click Insert > Module, and paste the following code in the Module Window.

Sub Combine()
Dim J As Integer
On Error Resume Next
Sheets(1).Select
Worksheets.Add
Sheets(1).Name = "Combined"
Sheets(2).Activate
Range("A1").EntireRow.Select
Selection.Copy Destination:=Sheets(1).Range("A1")
For J = 2 To Sheets.Count
Sheets(J).Activate
Range("A1").Select
Selection.CurrentRegion.Select
Selection.Offset(1, 0).Resize(Selection.Rows.Count - 1).Select
Selection.Copy Destination:=Sheets(1).Range("A65536").End(xlUp)(2)
Next
End Sub

3. Then press F5 key to run the code, and all the data in the workbook has been merged into a new worksheet named Combined which will add before all worksheets.

Notes:
(1.) Your data must start from A1, if not, the code will not take effect.
(2.) Your data must have the same structure.
(3.) This code only can combine all worksheets of the active workbook, if you want to merge worksheets from multiple workbooks, this code will not work.
I got this from here

сряда, 13 март 2013 г.

There is a problem sending the command to the program

Когато отваряме файл на excel 2007 с двойно кликване, излиза съобщение "there is a problem sending the command to the program".
Решението: тук
Или:
Microsoft Excel 2007
Click the Microsoft Office Button, and then click Excel Options.
Click Advanced, and clear the Ignore other applications that use Dynamic Data Exchange (DDE) check box in the General area.
Click OK.

петък, 1 февруари 2013 г.

Cannot shift objects off sheet OR Excel cannot paste the data


Когато се опитате да вмъкнете ред в excel 2007 или картинка и получите някое от горните съобщения, идете на ExcelOptions/Advanced, от там намерете секцията "Display options for this workbook", в характеристиката "For objects, show:" изберете "All"
Ако пак не става вижте какво казват микромеките по въпроса тук

вторник, 8 януари 2013 г.

Файловете от MS Office се отварят бавно / Very slow open of exsel/word files

MS Office използва DDE, за да отваря файловете си при двойно кликване върху тях. Идеята е да не се отваря всеки път нова инстанция на excel, word и т.н, а да се изпозва вече отворената инстанция.
Сега по някаква причина отварянето на файл с двойно кликване отнема около минута. Съветите в нета са да се забрани DDE. Да обаче това е тъпо, защото губим цялата функционалност, която ни е предоставена от DDE.
За това по-добре да открием истинския проблем. Използваме netstat -a по време на мъката при отварянето. Виждаме, че има SYNC SENT към машина, която вече не съществъва в мрежата или е спряна. Проверяваме в registry за записи, в които е цитирана тази машина, и ги изтриваме.
И всичко е ток и жици. Ооооо чудо!!!

In English:

Use netstat -a during opening of the file. See if you have SYNC SENT to some ip address that is not exist in the network. Delete registry records that are using this ip address.
Don't disable DDE it is stupid

събота, 14 януари 2012 г.

Прости числа - генератор на прости числа

Макроса по-долу генерира всички прости числа по-малки или равни на числото написано в клетка А1

Sub PrimeUpToA1()
'генерира всички прости числа по-малки или равни на числото написано в клетка А1
'резултатът се записва в колона 8 H като започва от ред 1, т.е. от клетка H1 надолу
Dim S() As Boolean
n = Sheet1.Cells(1, 1)
ReDim S(2 To n) As Boolean
For i = 2 To n
S(i) = True
Next i
For i = 2 To n / 2
If S(i) Then
k = 2
j = k * i
While j <= n
S(j) = False
k = k + 1
j = k * i
Wend
End If
Next i
m = 1
For k = 2 To n
If S(k) Then
Sheet1.Cells(m, 8) = k
m = m + 1
End If
Next k

End Sub

Прости числа - проверка дали едно число е просто

Функция в exsel показваща дали едно число е просто или не:

Function IsPrimeNumber(n)
'резултатът е true ако числото n е просто и false в противен случай
Dim S() As Boolean
ReDim S(2 To n) As Boolean
For i = 2 To n
S(i) = True
Next i
For i = 2 To n / 2
If S(i) Then
k = 2
j = k * i
While j <= n
S(j) = False
k = k + 1
j = k * i
Wend
End If
Next i
IsPrimeNumber = S(n)
End Function

четвъртък, 8 април 2010 г.

Странно поведение на excel

Грешка: "Excel cannot access filename.xls. Document is read-only or encrypted." - при отваряне на какъвто и да е екселски файл.
На същия компютър с друг профил няма проблем. С административни права не може да се преименува профила на счупения потребител.

Решение: Честна дума, честен кръст и т.н., но check disk със repair оправи нещата. Още не мога да повярвам.